Nant: The Godfather Of .NET Build Systems
Runtime: .NET
Build Configuration Language: XML with extensions written in .NET
URL: http://nant.sourceforge.net/
Nant is the old-school guy on the .NET block, having grown up over on Java road. This is the original .NET build tool that so many others wanted to be or wanted to be better than. If you’ve used any build tools for more than a few years in .NET, you’ve probably used Nant at least once. There are a lot of extensions and add-ons to Nant, including a user contributions project, several visual tools designed to abstract away the xml, some conventions based add-ons that make nant easier, etc. If you need to do it in your build process, chances are there is a plugin or a blog post that tells you how to do it with Nant.
Nant was originally a copy of the Java Ant build tool but quickly took its own directions in implementation becoming the defacto build tool in .NET for several years. With it’s heavy reliance on xml and its roots tracing back to java, most “enterprise” developers chose Nant because of it’s familiarity from the Java world.
Example: Build a solution
1: <target name="compile">
2: <echo message="Build my solution!" />
3: <msbuild project="src/mysolution.sln">
4: <arg value="/property:Configuration=release" />
5: <arg value="/t:Rebuild" />
6: </msbuild>
7: </target>
UppercuT: You Won’t Know What Hit You
Runtime: .NET (Nant) with extensions to call out to other platforms such as Ruby/Rake.
Build Configuration Language: None for simple builds. XML/Nant, Ruby, and Powershell for extended scenarios
URL: http://code.google.com/p/uppercut/
If you’re going to use Nant and you don’t need to do anything “unusual”, then you should be using UppercuT. This is an add-on that makes Nant so easy to use, you don’t even need to know how to use Nant. UppercuT makes good on it’s promises, too. It really is that easy to get a build up and running because you don’t need to know anything other than the basic conventions that it uses to find your solutions, tests, etc.
From the project’s homepage:
It seeks to solve both maintenance concerns and ease of build to help you concentrate on what you really want to do: write code. Upgrading the build should take seconds, not hours. And that is where UppercuT will beat any other automated build system hands down.
UppercuT is targeted at those who want all of the power and stability that Nant provides, but don’t want to deal with a ton of XML and build script definitions.
Example: No, really… this project makes building with Nant so easy, you don’t need to configure any tasks for most things. Check out the website for more information.
MSBuild: Bringing ‘One Microsoft Way’ To Your Build System
Runtime: .NET
Build Configuration Language: XML with extensions written in .NET
URL: http://msdn.microsoft.com/en-us/library/0k6kkbsd.aspx
Read more: lostechies.com