You are viewing a plain text version of this content. The canonical link for it is here.
Posted to nmaven-commits@incubator.apache.org by si...@apache.org on 2007/05/21 00:55:42 UTC

svn commit: r539988 - in /incubator/nmaven/trunk/site/src/site: apt/adding-executables.apt apt/getting-started.apt apt/index.apt apt/net-plugins.apt site.xml xdoc/conventions.xml

Author: sisbell
Date: Sun May 20 17:55:41 2007
New Revision: 539988

URL: http://svn.apache.org/viewvc?view=rev&rev=539988
Log:
Updated site docs.

Added:
    incubator/nmaven/trunk/site/src/site/xdoc/conventions.xml   (with props)
Modified:
    incubator/nmaven/trunk/site/src/site/apt/adding-executables.apt
    incubator/nmaven/trunk/site/src/site/apt/getting-started.apt
    incubator/nmaven/trunk/site/src/site/apt/index.apt
    incubator/nmaven/trunk/site/src/site/apt/net-plugins.apt
    incubator/nmaven/trunk/site/src/site/site.xml

Modified: incubator/nmaven/trunk/site/src/site/apt/adding-executables.apt
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/site/src/site/apt/adding-executables.apt?view=diff&rev=539988&r1=539987&r2=539988
==============================================================================
--- incubator/nmaven/trunk/site/src/site/apt/adding-executables.apt (original)
+++ incubator/nmaven/trunk/site/src/site/apt/adding-executables.apt Sun May 20 17:55:41 2007
@@ -176,13 +176,11 @@
         }
         catch ( ExecutionException e )
         {
-            throw new MojoExecutionException( "NMAVEN-xxx-000: Unable to execute: Vendor " + vendor +
-                ", frameworkVersion = " + frameworkVersion + ", Profile = " + profile, e );
+        ...
         }
         catch ( PlatformUnsupportedException e )
         {
-            throw new MojoExecutionException( "NMAVEN-xxx-001: Platform Unsupported: Vendor " + vendor +
-                ", frameworkVersion = " + frameworkVersion + ", Profile = " + profile, e );
+        ...
         }
     }
 

Modified: incubator/nmaven/trunk/site/src/site/apt/getting-started.apt
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/site/src/site/apt/getting-started.apt?view=diff&rev=539988&r1=539987&r2=539988
==============================================================================
--- incubator/nmaven/trunk/site/src/site/apt/getting-started.apt (original)
+++ incubator/nmaven/trunk/site/src/site/apt/getting-started.apt Sun May 20 17:55:41 2007
@@ -4,6 +4,10 @@
 
  * {{{getting-started.html#Building NMaven}Building NMaven}}
 
+ * {{{getting-started.html#Creating a Simple Project}Creating a Simple Project}}
+
+ * {{{getting-started.html#Generating VS2005 Solution Files}Generating VS2005 Solution Files}}
+
  * {{{getting-started.html#Assembly Info}Assembly Info}}
 
  * {{{getting-started.html#Unit Testing with NUnit}Unit Testing with NUnit}}
@@ -20,6 +24,8 @@
 
  * {{{getting-started.html#Using NMaven Settings File}Using NMaven Settings File}}
 
+
+
 * {Building NMaven}
 
 ** Prerequisites
@@ -137,6 +143,50 @@
  {{{ http://www.mono-project.com/Getting_Mono}Installing Mono}}. Make sure that su to root before installing with these
  instructions!
 
+* {Creating a Simple Project}
+
+ To create a simple project:
+
++----+
+ mvn archetype:create -DgroupId=<<groupid>>                               \
+                      -DartifactId=<<artifactId>>                         \
+                      -DarchetypeArtifactId=maven-archetype-dotnet-simple \
+                      -DarchetypeGroupId=org.apache.maven.dotnet          \
+                      -DarchetypeVersion=0.14-SNAPSHOT
++----+
+
+ You will see the following project generated:
+
++----+
+.
+ |-- src
+ |   `-- main
+ |       `-- csharp
+ |           `-- Sample
+ |               `-- MyApp.cs
+  `-- pom.xml
++----+
+
+ Note that due to a limitation of the existing maven archetype plugin, the generated project does not follow the
+ recommended conventions. See here: {{{conventions.html}Conventions}}
+
+* {Generating VS2005 Solution Files}
+
+ To generate the solution and project files (csharp only) for a project with a prexisting pom, go to the directory
+  containing the pom and type
+
++----+
+mvn NMaven.Plugins:NMaven.Plugin.Solution.JavaBinding:Solution
++----+
+
+ This plugin generates a solution file and project file for each project that exists within the project.modules.module
+ tag of the pom (or just the parent pom if no project.modules.module entry exists). The solution generator will
+ add all of the dependencies that exist within pom into the cs project file. The generator will also look through the
+ class files, attempting to locate and add any references that exist within the gac.
+
+ The latest solution generator runs as a .NET Maven plugin. Unfortunately due to a bug in Mono, .NET Maven plugins
+ don't work with Mono. This is a high priority item, so expect a working solution to be offered in the near feature.
+
 * {Assembly Info}
 
  Provided that you do not have your own AssemblyInfo class in your project, NMaven will automatically generate
@@ -506,3 +556,4 @@
   </vendors>
 </nmavenSettings>
 +----+
+

Modified: incubator/nmaven/trunk/site/src/site/apt/index.apt
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/site/src/site/apt/index.apt?view=diff&rev=539988&r1=539987&r2=539988
==============================================================================
--- incubator/nmaven/trunk/site/src/site/apt/index.apt (original)
+++ incubator/nmaven/trunk/site/src/site/apt/index.apt Sun May 20 17:55:41 2007
@@ -27,3 +27,9 @@
  * {{{http://jira.codehaus.org/browse/NMAVEN} NMaven Issue Tracking}}
 
  * {{{mailto:nmaven-dev@incubator.apache.org} Post to Mailing List}}
+
+Site Info
+
+ All information contained within this web-site is based on the latest work at
+ the {{{https://svn.apache.org/repos/asf/incubator/nmaven/trunk} SVN trunk }}, so all features may not work with the
+  latest stable tag {{{https://svn.apache.org/repos/asf/incubator/nmaven/tags} SVN tags }}

Modified: incubator/nmaven/trunk/site/src/site/apt/net-plugins.apt
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/site/src/site/apt/net-plugins.apt?view=diff&rev=539988&r1=539987&r2=539988
==============================================================================
--- incubator/nmaven/trunk/site/src/site/apt/net-plugins.apt (original)
+++ incubator/nmaven/trunk/site/src/site/apt/net-plugins.apt Sun May 20 17:55:41 2007
@@ -74,7 +74,7 @@
 
 +----+
 
-For the example above, your project structure should look something like:
+ For the example above, your project structure should look something like:
 
 +------+
 .
@@ -100,7 +100,7 @@
  mvn org.apache.maven.dotnet.plugins:maven-mojo-generator-plugin:generate-bindings
 +----+
 
-Your project strcuture will now look like this:
+ Your project structure will now look like this:
 
 +------+
 .

Modified: incubator/nmaven/trunk/site/src/site/site.xml
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/site/src/site/site.xml?view=diff&rev=539988&r1=539987&r2=539988
==============================================================================
--- incubator/nmaven/trunk/site/src/site/site.xml (original)
+++ incubator/nmaven/trunk/site/src/site/site.xml Sun May 20 17:55:41 2007
@@ -16,6 +16,7 @@
       <item name="About" href="index.html"/>
       <item name="Features" href="features.html"/>
       <item name="Getting Started" href="getting-started.html"/>
+      <item name="Conventions" href="conventions.html"/>      
       <item name="Plugins" href="/plugins/index.html"/>
       <item name="Configuration" href="environment-configuration.html"/>
     </menu>

Added: incubator/nmaven/trunk/site/src/site/xdoc/conventions.xml
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/site/src/site/xdoc/conventions.xml?view=auto&rev=539988
==============================================================================
--- incubator/nmaven/trunk/site/src/site/xdoc/conventions.xml (added)
+++ incubator/nmaven/trunk/site/src/site/xdoc/conventions.xml Sun May 20 17:55:41 2007
@@ -0,0 +1,118 @@
+<div id="contentBox">
+  <div class="section">
+    <h2>Conventions</h2>
+    <p>The following sections describe the conventions used within NMaven itself. This section is useful for
+      developers wishing to contribute to NMaven, as well as developers looking for a baseline for their own
+      projects. These conventions are evolving and subject to change as better ideas emerge:
+      <a href="mailto:nmaven-dev@incubator.apache.org">Got better ideas?</a>
+    </p>
+    <ul>
+      <li>Artifact ID - specified within the pom - is equivalent to the project's module name.
+        <div class="source">
+            <pre> |-- <font size = "+1"><b>NMaven.Artifact</b></font>
+ |   `-- main
+ |       `-- csharp
+ |           `-- NMaven
+ |               `-- Artifact
+ |                   `-- ArtifactContext.cs
+ |                   `-- Artifact.cs
+  `-- pom.xml
+</pre>
+        </div>
+        <div class="source">
+<pre>&lt;project xmlns=&quot;http://maven.apache.org/POM/4.0.0&quot;&gt;
+  &lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt;
+  &lt;groupId&gt;NMaven.Artifact&lt;/groupId&gt;
+  &lt;artifactId&gt;<font size = "+1"><b>NMaven.Artifact</b></font>&lt;artifactId&gt;
+  &lt;packaging&gt;library&lt;/packaging&gt;
+  &lt;version&gt;0.14-SNAPSHOT&lt;/version&gt;
+  &lt;name&gt;NMaven.Artifact&lt;/name&gt;
+&lt;/project&gt;
+</pre>
+        </div>
+      </li>
+
+
+      <li>If the module does not contain children modules, the Group ID is the same as the artifact ID.</li>
+        <div class="source">
+<pre>&lt;project xmlns=&quot;http://maven.apache.org/POM/4.0.0&quot;&gt;
+  &lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt;
+  &lt;groupId&gt;<font size = "+1"><b>NMaven.Artifact</b></font>&lt;/groupId&gt;
+  &lt;artifactId&gt;<font size = "+1"><b>NMaven.Artifact</b></font>&lt;artifactId&gt;
+  &lt;packaging&gt;library&lt;/packaging&gt;
+  &lt;version&gt;0.14-SNAPSHOT&lt;/version&gt;
+  &lt;name&gt;NMaven.Artifact&lt;/name&gt;
+&lt;/project&gt;
+</pre>
+        </div>
+
+
+      <li>If a module contains children modules, the child module Group ID should either be equivalent to a pluralized
+        parent module Group ID or be a deriviative of the parent module Group ID.</li>
+      <pre>
+    parent Group ID: NMaven.Model
+    child Group ID: NMaven.Model, NMaven.Models or NMaven.Model.VSContent
+      </pre>
+
+
+
+      <li>The directory structure of the source directory (typically src/main/csharp) will follow the same pattern
+        as the artifact ID.</li>
+        <div class="source">
+            <pre> |-- NMaven.Artifact
+ |   `-- main
+ |       `-- csharp
+ |           `-- <font size = "+1"><b>NMaven</b></font>
+ |               `-- <font size = "+1"><b>Artifact</b></font>
+ |                   `-- ArtifactContext.cs
+ |                   `-- Artifact.cs
+  `-- pom.xml
+</pre>
+        </div>
+        <div class="source">
+<pre>&lt;project xmlns=&quot;http://maven.apache.org/POM/4.0.0&quot;&gt;
+  &lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt;
+  &lt;groupId&gt;NMaven.Artifact&lt;/groupId&gt;
+  &lt;artifactId&gt;<font size = "+1"><b>NMaven.Artifact</b></font>&lt;artifactId&gt;
+  &lt;packaging&gt;library&lt;/packaging&gt;
+  &lt;version&gt;0.14-SNAPSHOT&lt;/version&gt;
+  &lt;name&gt;NMaven.Artifact&lt;/name&gt;
+&lt;/project&gt;
+</pre>
+        </div>
+
+
+      <li>If an assembly will only compile under a specific platform, those values should be specified within the
+        compiler-config.<div class="source"><pre>
+ &lt;project xmlns=&quot;http://maven.apache.org/POM/4.0.0&quot;&gt;
+  &lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt;
+  &lt;groupId&gt;NMaven.Plugins&lt;/groupId&gt;
+  &lt;artifactId&gt;NMaven.Plugins&lt;/artifactId&gt;
+  &lt;packaging&gt;pom&lt;/packaging&gt;
+  &lt;version&gt;0.14-SNAPSHOT&lt;/version&gt;
+  &lt;name&gt;NMaven.Plugins&lt;/name&gt;
+  &lt;build&gt;
+    &lt;sourceDirectory&gt;src/main/csharp&lt;/sourceDirectory&gt;
+    &lt;testSourceDirectory&gt;src/test/csharp&lt;/testSourceDirectory&gt;
+    &lt;plugins&gt;
+      &lt;plugin&gt;
+        &lt;groupId&gt;org.apache.maven.dotnet.plugins&lt;/groupId&gt;
+        &lt;artifactId&gt;maven-compile-plugin&lt;/artifactId&gt;
+        &lt;extensions&gt;true&lt;/extensions&gt;
+        &lt;configuration&gt;
+          &lt;vendor&gt;<font size = "+1"><b>MONO</b></font>&lt;/vendor&gt;
+          &lt;frameworkVersion&gt;<font size = "+1"><b>2.0.50727</b></font>&lt;/frameworkVersion&gt;
+          &lt;vendorVersion&gt;<font size = "+1"><b>1.2.3.1</b></font>&lt;/vendorVersion&gt;
+        &lt;/configuration&gt;
+      &lt;/plugin&gt;
+    &lt;/plugins&gt;
+  &lt;/build&gt;
+&lt;/project&gt;
+</pre></div></li>
+
+
+
+      <li>Use the default setup within the nmaven-settings.xml is to configure cross-platform builds.</li>
+    </ul>
+  </div>
+</div>

Propchange: incubator/nmaven/trunk/site/src/site/xdoc/conventions.xml
------------------------------------------------------------------------------
    svn:eol-style = native