Building NPanday is quite simple and follows the typical convention for a Maven project.
Since NPanday is built using NPanday, you must fulfil all the prerequisites documented in the Installation Guide. NPanday trunk usually builds against one of the latest releases. If you want
NPanday builds using .NET 2.0. So, if you do not have Visual Studio 2005 installed, you must install .NET SDK 2.0 or Windows SDK 6.1 (includes .NET SDK 2.0) manually. This is, because neither VS 2008 or VS 2010 include the SDK for .NET 2.0. Find the download locations in the Installation Guide.
NUnit-Binaries must be on the PATH environment variable.
You can check out the latest source code from https://svn.apache.org/repos/asf/incubator/npanday/trunk. You can also download a previous version as an archive from the web site, or from check it out from the subdirectory of https://svn.apache.org/repos/asf/incubator/npanday/tags.
For example:
svn co https://svn.apache.org/repos/asf/incubator/npanday/trunk npanday
Everything in the distribution, including the Visual Studio add-in, is built using the following command:
mvn clean install
Note: On Windows Vista and Windows 7, this presently needs to be run as an administrator to build successfully, as it installs 3 libraries into the GAC.
Once this command has completed, you can proceed to use the Maven plugins immediately. To install the Visual Studio Add-in, you will need to still run the mvn npanday.plugin:maven-vsinstaller-plugin:install command as described in the Installation Guide.
If you just wish to work on the Visual Studio Add-in, it can be loaded into Visual Studio and built there. More information is available in Debugging the Visual Studio Add-in.
The Maven command line plugins feature a series of integration tests to ensure that everything is working as expected. They can be obtained by checking out the source code at https://svn.apache.org/repos/asf/incubator/npanday/npanday-its/trunk.
For example:
svn co https://svn.apache.org/repos/asf/incubator/npanday/npanday-its/trunk npanday-its
From within that directory, you can run it against the latest available version of NPanday (likely the one you have just built above) using the following command:
mvn test -Prun-its
NOTE: In order to successfully run the integration tests, ildasm needs to be on the PATH. (this is to be fixed NPANDAY-393)
The command will indicate which version of NPanday is being used, and which tests pass and fail. It will also indicate which version of .NET SDK is installed and used by the tests - for example, if .NET 3.5 SDK is not available, tests that depend on it will be skipped.
You can also run them against a specific previous version of NPanday (which will be downloaded from the repository if needed):
mvn test -Prun-its -Dnpanday.version=1.5.0-incubating-SNAPSHOT
When contributing fixes for issues in the Maven plugins, it is appropriate to write an integration test along with it. They are written in Java, using JUnit, and contain a sample project against which mvn is run against, and the the expected results are then verified. Existing integration tests can be used as a guide.
You can also build the source code and execute the ITs in one command. But first you have to install the ITs in your local repository using the following command:
mvn clean install
After you have installed the ITs locally, you can now build the source code and execute the ITs by using the following command:
mvn clean install -Prun-its
NPanday documentation is generated from APT-files using the Maven Doxia Tools.
The documentation site and PDF can be generated using the following command within the site and the plugins directory of the NPanday trunk:
mvn site-deploy -P local-docs
Open file:///c:/Program Files/NPanday/docs/index.html in your browser to view the documentation.
You may also override the default local deployment through an additional argument -Dlocaldocs.folder=file:///....
It is recommended to add -o for speeding up the generation after the first successful build.