Monday, November 9, 2009

NAnt

Why NAnt?

NAnt is different. Instead of a model where it is extended with shell-based commands, NAnt is extended using task classes. Instead of writing shell commands, the configuration files are XML-based, calling out a target tree where various tasks get executed. Each task is run by an object that implements a particular Task interface.

Granted, this removes some of the expressive power that is inherent in being able to construct a shell command such as 'find . -name foo -exec rm {}', but it gives you the ability to be cross-platform - to work anywhere and everywhere. And hey, if you really need to execute a shell command, NAnt has an task that allows different commands to be executed based on the OS it is executing on.'

Click here for more infomation about Nant

1 comment:

  1. Difference between Ant and Nant?
    1. The main difference between Nant and Ant is what tasks are available. Ant inherently knows a lot about how to build Java applications and has few/no tasks for building .NET applications. Nant inherently knows a lot about how to build .NET applications and has few/no tasks specific to Java compilation. Nant's .NET building tasks have been built with the framework abstracted so that it can build using .NET 1.0, .NET 1.1, or Mono without changing your build file.
    2. Nant uses a .build rather than build.xml as the default file
    3. In Nant,In order to use the global parameters from the root build file, you must
    include it in each subproject build file with:
    "include buildfile="RootBuildFile.build" />"

    ReplyDelete