Ant是一种基于Java的build工具。理论上来说,它有些类似于(Unix)C中的make ,但没有make的缺陷。
http://ant.apache.org/
版本:apache-ant-1.8.4
1、输出信息
2、时间戳
3、使用properties文件
4、定义变量
5、导入其他Build文件
6、自定义Task
7、创建文件夹
8、删除文件夹
9、移动文件夹
10、拷贝文件夹
11、删除文件
12、拷贝文件
13、文件重命名
14、修改文件中的某个值
15、压缩文件
16、解压文件
17、移动文件
18、设置classpath
19、编译类
20、运行类
21、打包jar
22、打包war
23、CVS相关
24、执行外部文件
25、SSH
26、SCP
27、文件同步
28、转换文件格式
29、发送邮件
此文章由 http://www.ositren.com 收集整理 ,地址为: http://www.ositren.com/htmls/68298.html
http://ant.apache.org/
版本:apache-ant-1.8.4
1、输出信息
- <!-- 输出信息 -->
- <echo>ANT_HOME:${ant.home}</echo>
- <echo message="ANT_VERSION:${ant.version}"/>
2、时间戳
- <!-- 时间戳 -->
- <tstamp />
- <echo message="${DSTAMP}"/>
3、使用properties文件
- <property file="build.properties" />
- <!-- 使用build.properties -->
- <echo message="${test.key1}"/>
4、定义变量
- <!-- property定义 -->
- <property name="test.property1" value="propertyA"/>
- <echo message="${test.property1}"/>
5、导入其他Build文件
- <include file="included.xml"/>
- <!-- included.xml -->
- <echo message="${included}"/>
- ......
- <import file="imported.xml"/>
- <!-- imported.xml -->
- <echo message="${imported}"/>
6、自定义Task
- package com.rensanning.ant;
- import org.apache.tools.ant.BuildException;
- import org.apache.tools.ant.Task;
- public class MyTask extends Task {
- private String name;
- private String country;
- @Override
- public void execute() throws BuildException {
- System.out.println(name + " from " + country);
- }
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public String getCountry() {
- return country;
- }
- public void setCountry(String country) {
- this.country = country;
- }
- }
- <taskdef name="mt" classname="com.rensanning.ant.MyTask" classpath="bin"/>
- <!-- 自定义Task -->
- <mt name="rensanning" country="china"/>
7、创建文件夹
- <!-- 创建文件夹 -->
- <mkdir dir="C:\ant\test11\10" />
- <mkdir dir="C:\ant\test11\11" />
8、删除文件夹
- <!-- 删除文件夹 -->
- <delete dir="C:\ant\test11\11" />
9、移动文件夹
- <!-- 移动文件夹 -->
- <mkdir dir="C:\ant\folder\move" />
- <move todir="C:\ant\folder\move">
- <fileset dir="test/folder/move"/>
- </move>
10、拷贝文件夹
- <!-- 拷贝文件夹 -->
- <mkdir dir="C:\ant\folder\copy" />
- <copy todir="C:\ant\folder\copy">
- <fileset dir="test/folder/copy">
- <include name="**/*.java" />
- <exclude name="**/*Test.java" />
- </fileset>
- </copy>
11、删除文件
- <!-- 删除文件 -->
- <delete file="test/file/delete/deletefile.txt" />
12、拷贝文件
- <!-- 拷贝文件 -->
- <mkdir dir="C:\ant\file\copy" />
- <copy todir="C:\ant\file\copy">
- <fileset dir="">
- <include name="**/*.java" />
- <exclude name="**/*.class" />
- </fileset>
- </copy>
13、文件重命名
- <!-- 文件重命名 -->
- <move file="test/file/copy/C2.java" tofile="C:\ant\file\copy\RC2.java"/>
14、修改文件中的某个值
- <!-- 修改文件中的某个值 -->
- <replace file="C:\ant\file\copy\RC2.java" token="args" value="param"/>
15、压缩文件
- <!-- 压缩文件 -->
- <mkdir dir="C:\ant\file\zip" />
- <zip destfile="C:\ant\file\zip\manual.zip"
- basedir="test/folder"
- includes="**/*.java"
- excludes="**/*Test.java"/>
16、解压文件
- <!-- 解压文件 -->
- <mkdir dir="C:\ant\file\unzip" />
- <unzip src="C:\ant\file\zip\manual.zip" dest="C:\ant\file\unzip"/>
17、移动文件
- <!-- 移动文件 -->
- <mkdir dir="C:\ant\file\move" />
- <move file="test/file/move/movefile.txt" todir="C:\ant\file\move"/>
18、设置classpath
- <!-- 设置classpath -->
- <path id="cp">
- <pathelement path="${java.class.path}"/>
- <fileset dir="./lib">
- <include name="**/*.jar"/>
- </fileset>
- </path>
19、编译类
- <!-- 编译类javac -->
- <javac destdir="./bin"
- encoding="UTF-8"
- deprecation="on"
- debug="off"
- fork="true"
- memoryMaximumSize="256m">
- <src path="src"/>
- <src path="src2"/>
- <classpath refid="cp" />
- </javac>
20、运行类
- <!-- 运行类java -->
- <java classname="com.rensanning.ant.T" classpath="bin"/>
21、打包jar
- <!-- 打包jar -->
- <mkdir dir="C:\ant\jar" />
- <jar jarfile="C:\ant\jar\test.jar">
- <fileset dir="./bin">
- <include name="**/*" />
- </fileset>
- </jar>
22、打包war
- <!-- 打包war -->
- <mkdir dir="C:\ant\war" />
- <war destfile="C:\ant\war\myapp.war" webxml="test/war/web.xml">
- <fileset dir="test/war/html"/>
- <fileset dir="test/war/jsp"/>
- <lib dir="./lib">
- <exclude name="servlet-api.jar"/>
- </lib>
- <classes dir="./bin"/>
- <zipfileset dir="test/war/images" prefix="images"/>
- </war>
23、CVS相关
- <!-- CVS相关 -->
- <cvspass cvsroot="${cvsroot}" password="${cvs.password}" passfile="${cvs.passfile}"/>
- <cvs cvsroot="${cvsroot}" command="checkout" cvsrsh="ssh" package="myproject" dest="${basedir}" passfile="${cvs.passfile}"/>
- <cvs cvsRoot=":pserver:${cvs.user}:${cvs.password}@${cvs.server}:${cvs.reppath}"
- package="${cvs.module}"
- tag="${tag60}"
- dest="${checkoutdir}" />
24、执行外部文件
- <!-- 执行外部文件 -->
- <exec executable="cmd">
- <arg value="/c"/>
- <arg value="ant.bat"/>
- <arg value="-p"/>
- </exec>
25、SSH
- <!-- SSH -->
- <sshexec host="" username="" password="" trust="true" command=""/>
26、SCP
- <!-- SCP -->
- <scp todir="root:123456@192.168.0.2:/usr/local/tomcat/webapps/" trust="true">
- <fileset dir="dir" id="id">
- <include name="include"/>
- <exclude name="exclude"/>
- </fileset>
- </scp>
27、文件同步
- <!-- 文件同步 -->
- <sync todir="site">
- <fileset dir="generated-site"/>
- </sync>
28、转换文件格式
- <!-- 转换文件格式 -->
- <native2ascii encoding="EUCJIS" src="srcdir" dest="srcdir" includes="**/*.eucjis" ext=".java"/>
29、发送邮件
- <!-- 发送邮件 -->
- <mail mailhost="smtp.myisp.com" mailport="1025" subject="Test build">
- <from address="me@myisp.com"/>
- <to address="all@xyz.com"/>
- <message>The {buildname} nightly build has completed</message>
- <fileset dir="dist">
- <includes name="**/*.zip"/>
- </fileset>
- </mail>
此文章由 http://www.ositren.com 收集整理 ,地址为: http://www.ositren.com/htmls/68298.html