代码改变世界

NAnt学习笔记(2) -- 节点的含义解释

2012-04-23 00:07 JustRun 阅读(...) 评论(...) 编辑 收藏
 1 <?xml version="1.0"?>
 2     <project name="Hello World" default="build" basedir=".">
 3         <description>The Hello World of build files.</description>
 4         <property name="debug" value="true" overwrite="false" />
 5         <target name="clean" description="remove all generated files">
 6             <delete file="HelloWorld.exe" failonerror="false" />
 7             <delete file="HelloWorld.pdb" failonerror="false" />
 8         </target>
 9         <target name="build" description="compiles the source code">
10             <csc target="exe" output="HelloWorld.exe" debug="${debug}">
11                 <sources>
12                     <includes name="HelloWorld.cs" />
13                 </sources>
14             </csc>
15         </target>
16     </project>

 

1. Project

属性 描述 必须?
name project的名称 No
default 当在命令行中运行,没有提供运行那个target的时候,默认执行的target No
basedir 执行的基于路径,没有指定的话,默认是该配置文件的父目录 No

 

2. Targets

属性 描述 必须?
name target名称 Yes
depends 依赖于那个其它的target No
if 当if条件符合时,才会执行 No
unless 当条件符合时,忽略执行 No
description 描述 No

 

3. Task

Task就是一块可执行的代码

Tasks的结构:

<name attribute1="value1" attribute2="value2" ... />

具体的task类型可以访问这里: http://nant.sourceforge.net/release/latest/help/tasks/

 

加载扩展

上面的task类型也许不能够满足你的需求,比如svn取代码,这个时候你需要一些其它的扩展。

扩展有4类, Tasks, Filters, Functions, Global Types

这里有NAnt常用的扩展, 下载地址:http://nantcontrib.sourceforge.net/nightly/latest/nantcontrib-bin.zip