Rick Sternquist  

NAntBuilder

Posted by Rick Sternquist
Wednesday, April 22, 2009

When it comes to automating a .NET build process, NAnt and NAntContrib are my favorite tools. One major advantage of NAnt is the fact that the build scripts are completely written in XML and can be maintained with your favorite text editor. However, as a Microsoft .NET developer, I must admit I prefer to do my work in an integrated development environment (IDE). That's why I use NAntBuilder. NAntBuilder is a full-featured IDE for NAnt and it's designed to be a powerful script creator, editor, and debugger. If you're new to developing NAnt scripts, I highly recommend giving the product a try. The new version is much improved. You can download a free, trial version here.

Labels:

Rick Sternquist  

Building Silverlight Apps with NAnt

Posted by Rick Sternquist

A Daily Build is one of the true cornerstones of software development. As Steve McConnell wrote in one of my all-time favorite articles, Daily Build and Smoke Test, a Daily Build "minimizes integration risks, reduces the risks of low quality, provides easier defect diagnosis, and improves morale".

On my current Silverlight project at Chicago Technologies, one of my first tasks was to develop an automated, Daily Build process for the team. Over the years, NAnt has become my favorite tool for automating .NET build processes. The following are a couple of considerations when working with NAnt and Silverlight:

  • NAnt - Use NAnt 0.86 Beta 1 Release. I have found this release to be stable and it supports both .NET Framework 3.5 and Silverlight 2.0 targets

  • NAntContrib - Use NAntContrib 0.85. NAntContrib provides tasks and tools that aren't available in NAnt. As far as I'm concerned, NAntContrib is a must for two reasons: the MSBuild task and the SCM-related tasks for SourceSafe, StarTeam, and Subversion.

  • MSBuild - Utililze the NAntContrib task, MSBuild, for the actual compilation of the application. More on this later.

An important note regarding the integration between Subversion and NAntContrib. On our project, we're using Subversion and the TortoiseSVN client. NAntContrib utilizes "svn.exe", the command line utility, for its SVN-related tasks. However, the installation of TortoiseSVN does not contain "svn.exe". I had to install an additional Subversion client that utilized "svn.exe" Without the command-line utility installed, your SVN-related NAntContrib tasks will not work. I used CollabNet Subversion Command-Line Client v1.6.1 (for Windows).

I hope this information helps you. My next post will contain a sample NAnt build script for building Silverlight applications.

Labels: , , ,