I've been using NAnt for a while but it seems to be overly complex for what I need. I was wondering if there are any alternatives around for building C# projects?
There's MSBuild, but it's no simpler than Nant.
Both are fine once you get used to the syntax.
A simpler option is to use Batch files.
Another is to use CIFactory, which provides a quick way to get a build and continuous integration server up and running.
You might try FinalBuilder - it's very easy to use, although I prefer to stick with NAnt. And you always have MSBuild...
I would say once you get started in NAnt it is not THAT complex. I was missing a little bit a good "let's get me started" tutorial and everything I read felt pretty dated. A good thing is that you can use MSBuild for building the application (that is what I am using) and doing the rest with NAnt.
At least I think it is not harder than MSBuild - and for things MSBuild is easier you are free to use MSBuild for that.
This is what I am using:
<exec program="msbuild.exe"
basedir="C:\windows\microsoft.net\Framework\v3.5\"
commandline="Project.csproj /p:OutDir=..\Outdir\; configuration=Release" />
Maven is a great build tool, it was developed mainly for the Java community but there is now a .NET plugin for building C# projects. There are fairly big conceptual differences between Maven (see wikipedia for a brief overview) and NAnt so you may want to read up on that first if you want to try it.
2 interesting features:
- Mature collection of plugins for doing common tasks such as testing, doc generation, deploying etc.
- Can automatically get project dependencies for you from a central repository