UML软件工程组织

 

 

nant的使用
 
2008-08-04 作者:Comman1999 来源:csdn
 

1、系统需求

使用Nant,需要具备以下一种CRL:

· Microsoft .NET Framework 1.0

· Microsoft .NET Framework 1.1

· Microsoft .NET Framework 2.0 Beta 1

· Mono 1.0.x

依赖的库文件

Nant使用了许多开源的第三方组件库,nant的最近版本中包含了这些组件,在安装nant时不需要做额外的工作。有关这些组件的更多信息请参考以下链接:

 NUnit - Required for unit testing

 NDoc - Required for documentation generation

 SharpZipLib - Required for the zip and unzip tasks

2、安装

无论是源代码还是编译好的二进制文件,Nant都是可以使用的。编译好的二进制文件是建立工程所需要的,包括构建tasks, types 和 functions。

从二进制文件安装:

1)       下载nant-bin.zipnant-bin.tar.gz

2)       从机器上删除以前的旧版本

3)        解压缩下载的压缩文件到你期望安装NAnt的地方

4)         根据你的机器环境,构建一个脚本文件来运行Nant:

Ø         在.NET下运行Nant:

新建一个批处理文件,如nant.bat,在里面加入如下内容,注意把红色部分换成自己机器上的Nant的安装路径,然后运行这个批处理文件即可:

          @echo off
          "C:\Program Files\NAnt\bin\NAnt.exe" %*

Ø         在Mono下运行Nant:

Windows环境:同.NET

Linux / Cygwin:在你的文件系统的适当位置创建一个名称为nant的文件(例如/usr/local/bin),在文件中加入以下内容:

          #!/bin/sh
          exec mono /usr/local/nant/bin/NAnt.exe "$@"
          确保nant有运行的权限,如:chmod a+x /usr/local/bin/nant

5)         打开命令行窗口,把目录切换到装有nant的文件夹,执行nant –help,如果安装正确,你就会看到以命令行选项显示的使用信息。

6)         (选做)下载、安装NAnt-contrib或其他第三方扩展程序。

从源代码进行安装:

1)        下载nant-src.zipnant-src.tar.gz

2)       从机器上删除以前的旧版本

3)        解压缩下载的压缩文件到你期望安装NAnt的地方

4)        打开命令行提示符窗口,把目录切换到你把文件解压缩到的地方

5)         根据你的机器环境,编译Nant:

Ø         在.NET下

n          GNU Make

make install MONO= MCS=csc prefix=installation-path

例如:make install MONO= MCS=csc prefix="C:\Program Files"

n          NMake

nmake -f Makefile.nmake install prefix=installation-path

例如:nmake -f Makefile.nmake install prefix="C:\Program Files"

Ø         在Mono下:

§         GNU Make

make install prefix=installation-path

eg. make install prefix="C:\Program Files"

§         NMake

nmake -f Makefile.nmake install MONO=mono CSC=mcs prefix=installation-path

eg. nmake -f Makefile.nmake install MONO=mono CSC=mcs prefix=/usr/local/

这会生成一个bootstrap版本的nant,然后使用它生成、安装full版本的nant:installation-path/NAnt

6)         打开命令行窗口,把目录切换到装有nant的文件夹,执行nant –help,如果安装正确,你就会看到以命令行选项显示的使用信息。

7)         (选做)下载、安装NAnt-contrib或其他第三方扩展程序。

 

 
 

3、运行例子程序

打开命令行窗口,把目录切换到装有nant的文件夹,输入以下命令行并执行,注意红色部分换成自己的例子程序的路径:

Nant –buildfile:..\examples\examples.build

成功会显示编译信息。 

Build文件

Nant的Build文件是用xml写的。每一个文件包含一个工程(project)和几个对象(target),每一个对象包含几个任务(taek)。下面是一个编译HelloWorld(c#)工程的简单build文件。

<?xml version="1.0"?>
    <project name="Hello World" default="build" basedir=".">
        <description>The Hello World of build files.</description>
        <property name="debug" value="true" overwrite="false" />
        <target name="clean" description="remove all generated files">
            <delete file="HelloWorld.exe" failonerror="false" />
            <delete file="HelloWorld.pdb" failonerror="false" />
        </target>
        <target name="build" description="compiles the source code">
            <csc target="exe" output="HelloWorld.exe" debug="${debug}">
                <sources>
                    <includes name="HelloWorld.cs" />
                </sources>
            </csc>
        </target>
    </project>

在这个例子里面,有"clean" and "build".  两个对象。缺省时,“build”任务会被调用。

例子

examples 文件夹内,你能找到运行这些粒子所需的文件。

nant:在debug模式(缺省)下运行nant并构建工程。

nant clean:运行nant并删除已编译好的文件。

nant -D:debug=false:在non-debug 模式下运行nant并生成工程。尽管build文件的debug 属性为真(true),命令行中设置的值不会受影响,就像 <property> 任务中的“overwrite”属性被设置为假(false)。

重要提示:如果产生的文件的日期比源文件的日期早,将仅仅执行像编译器任务这样的任务。如果你在debug模式下编译HelloWorld工程,然后什么东西也不清除,在no-debug模式下重新编译,这种情况就会发生,因为nant工程不需要被重新生成。

1、运行nant

一旦安装了Nant,运行是很简单的,仅仅是输入nant。输入nant –help能够得到用法信息。

1)         指定build文件

没有指定文件时,NAnt会在当前文件夹中寻找.build文件,例如NAnt.build。如果找到了,NAnt就把它作为build文件使用。如果找到了一个以上的文件,你需要使用-buildfile选项(用法见下面)指定一个文件。

如果你使用-find选项,NAnt会到父目录中寻找build文件,如此继续,直至到达根目录。使用命令行选项-buildfile:file可以使NAnt使用其它的build文件。

2)         指定对象

你可以指定一个或多个将要被执行的对象。当忽略时,<project>标签的default属性指定的对象将被使用。

如果工程有描述存在,Projecthelp将把它打印出来,紧跟在描述后面的是工程的对象列表

3)         设置属性

使用-D:property=value撤销build文件中指定的属性,其中property是属性的名称,value是属性的值。

4)         例子

Nant:在当前目录中使用*.build结尾的xml文件运行nant,使用缺省对象

NAnt -buildfile:..\ProjectName.build:使用父目录下的ProjectName.build文件,,使用缺省对象。

Nant clean:在当前目录使用build文件运行nant,使用名称为clean对象。

 

组织简介 | 联系我们 |   Copyright 2002 ®  UML软件工程组织 京ICP备10020922号

京公海网安备110108001071号