NAnt is a BuildProcess
tool for MicrosoftDotNet
, based upon ApacheAnt
. NAnt includes support for NdocTool
NAnt is probably the most popular open build language for the MicrosoftDotNet
platform, though the pure VisualStudio
IDE and the Nmake clone of make it also ships with (see UsingNmake
). The pre-announcement of MicrosoftBuild
puts a cloud over its future, though as it also runs on the MonoProject
, it has a future. ApacheAnt
's support for MicrosoftDotNet
projects is more limited, which implies that combination is less popular.
It's not very good. Poke around the Nant wiki and see for yourself, or download and try it. Then try SconsBuildTool
. You'll get your stuff working much faster. SconsBuildTool
is great for DotNet
I think ApacheAnt
are really poor at what they do. It's about the worst use of ExtensibleMarkupLanguage
I have seen. It's a real drag to edit and maintain these files. They are convoluted, and rather than lying on top of XML, they intertwine. They have horrible macro expansions in attributes and weird structures. But hey, they are in XML. That must be good.
, SConsTool is much easier to get working and is better supported.
-If you think that macro expansions in text elements is horrible, then so is XPath, XML Schema and many other XML extension specifications. The nice thing about XML based languages is that the XML toolchain can work with them, as well as humans. Now, machines may have the upper hand in terms of legibility, but that is XML for you. If you think ApacheAnt
are the worst uses of ExtensibleMarkupLanguage
, please take a look at the XML output of MSWord. That isn't even easily machine readable.
Note that the Ant team reguarly gets complaints about 1. Ant not handling double dashes -- in comments, 2. Bad handling of foreign characters in XML files not declaring their encoding to be other than UTF-8 and 3, whitespace sensitive inside tasks. (1) and (2) are actually requirements of XML; whitespace sensitivity is something deliberately retained for better output formatting. Yet judging by the frequency of these complaints, users do have issues with XML. It's hard to blame Ant, Nant and soon MSBuild for this -only by moving to a non-XML syntax do you improve authorability. --SteveLoughran
for NAnt builds.
CategoryDotNet CategorySoftwareTool CategoryAnt