利用NAnt取得远程VSS服务器中的文件并且编译
利用NAnt取得远程VSS服务器中的文件并且编译
一. 系統需求
Win2000 以上操作系统 VS.NET 2003 必须被安裝
二. 相关工具安裝說明
为了能够实现功能,以下的软件是必须下载安装的(为了程序运行,请载最新版本):
1. NAnt
相关链接URL:
http://nant.sourceforge.net/builds/
2. NAntContrib
相关链接地址:
http://nantcontrib.sourceforge.net/nightly/builds/
三. 制作说明
1. NAnt的安装
在系统变量中找到 “path” ,记下path对应的值,设为A,记下nant.exe对应的目录地址,如d:\nant\bin\nant.exe.然后打开命令提示符输入. Set path=A; d:\nant\bin\ 回车即安装成功.
2. 测试NANT 是否安装成功
2.1 运行单个.CS文件
打开记事本,输入:
另存为成 Test.cs文件.
再打开记事本,输入(注意:build文件中要加入中文字符,则在前边加 encoding=“gb2312“):
图3 Default1.build文件图
另存为 default1.build文件. 然后把 Test.cs和default1.build放在同一个目录下,打开命令提示符,进入这两个文件同在的目录,输入nant 并回车如下图所示:
由上图知,编译成功.编译总共花费0.5秒.
下边讲解一下NANT的语法,在NANT中注释用<!-- 注释-->和HTML中的注释一样,为了方便,我在图中直接按C#语法注释,如下图所示:
图5 注释图
注意:在NANT运行的目录里只能包含一个*.build文件,否则运行不成功.要运行特别的如”clean”target又不想设为默认的target则应在命令提示符中输入:nant clean
最新的 NAnt 的task及其对应属性列表.
http://nant.sourceforge.net/help/tasks/index.html
2.2 运行两个解决方案
用Visual Studio 2003编译两个解决方案,目录名为 Test 和Test2 ,放在相同的根目录里.
然后打开记事本编写.build文件.如下图:
图6 解决方案build图
对应的注释如下图(在上边注释过的要关注释将不会再注释):
图7 解决方案注释图
将此文件保存成 default.build并放在 d:\clienvss里边.打开命令提示符,进入d:\clientvss,并且运行 nant 运行成功如图:
图8 运行解决方案方案图
运行成功后,将会在对应的输出目录里生成相应的目标文件,如 EXE可执行文件.
3. 取得远程VSS DataBase Server中的数据
将NAntContrib目录下bin文件夹里的所有文件都拷贝到NAnt安装目录下的bin文件夹里,这样默认没有vssget task的NAnt里就具可以调用vssget task了.
另:下载NAntContrib后,里边有说明文件,要如何如何,大可不必理会,因为该软件可能会有一些bug,比如我测试 bin\nant.exe package的时候,有的时候不好使,有的时候又测试成功.
打开记事本并且输入以下内容,如图:
图9 VSSGET TASK图
保存成 default.build 在命令提示符下运行.将会把远程的VSS服务器上的文件传到本地机子上来.
相关注释如下:
图9 VSSGET TASK注释图
关于 NAntContrib的新的task 及其所有的属性列表,请参见:
http://nantcontrib.sourceforge.net/help/tasks/index.html
VSSGET task的属性列表: