Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I've done a similar investigation this week. Here's what I've been able to determine:</p> <p><strong>NAnt:</strong></p> <ul> <li>Cross-platform (supports Linux/Mono). It may be handy for installing a web site to multiple targets (that is, Linux Apache and Windows IIS), for example.</li> <li>95% similar in syntax to Ant (easy for current Ant users or Java builders to pick up)</li> <li>Integration with NUnit for running unit tests as part of the build, and with NDoc for producting documentation.</li> </ul> <p><strong>MSBuild:</strong></p> <ul> <li>Built-in to .NET.</li> <li>Integrated with Visual Studio</li> <li>Easy to get started with MSBuild in Visual Studio - it's all behind the scenes. If you want to get deeper, you can hand edit the files.</li> </ul> <p><strong>Subjective Differences:</strong> <em>(YMMV)</em></p> <ul> <li>NAnt documentation is a little more straightforward. For example, the <a href="http://msdn.microsoft.com/en-us/library/7z253716.aspx" rel="noreferrer">MSBuild Task Reference</a> lists "Csc Task - Describes the Csc task and its parameters. " (thanks for the "help"?), vs the <a href="http://nant.sourceforge.net/release/latest/help/tasks/" rel="noreferrer">NAnt Task Reference</a> "csc - Compiles C# programs." <strong><em>UPDATE:</em></strong> I've noticed the <a href="http://msdn.microsoft.com/en-us/library/7z253716.aspx" rel="noreferrer">MSBuild documentation</a> has been improved and is much better now (probably on par with NAnt).</li> <li>Not easy to figure out how to edit the build script source (*.*proj file) directly from within Visual Studio. With NAnt I just have Visual Studio treat the .build script as an XML file.</li> <li>Apparently, in Visual Studio, Web Application Projects don't get a *.*proj file by default, so I had great difficulty figuring out how to even get MSBuild to run on mine to create a deployment script.</li> <li>NAnt is not built-in to Visual Studio and has to be added, either with an Add-In, or as an "External Tool". This is a bit of a pain to set up.</li> <li>(Edit:) One of my coworkers brought this up--if you want to set up a build machine using <a href="http://cruisecontrol.sourceforge.net/" rel="noreferrer">CruiseControl</a> for continuous integration, CruiseControl integrates with NAnt nicely out of the box. <strong><em>UPDATE:</em></strong> CruiseControl also has an <a href="http://www.cruisecontrolnet.org/projects/ccnet/wiki/MsBuild_Task" rel="noreferrer">MSBuild task</a>.</li> <li><em>Please see comments below for full and up-to-date discussion of subjective differences.</em></li> </ul>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload