ANT官网:http://ant.apache.org/manual/
一、基本属性:
1. Project: name="工程名" default="target名称" basedir="." 当前项目目录
2. target: name、depends
3. property: 定义属性(变量)[5种], 不存在作用域问题只要定义过就可以使用
a) <property name="name" value="Tom" ></property>
b) <property name="src.dir" location="src"></property>等价于<property name="src.dir" value="${basedir}/src" ></property>
c) <property file="*.properties" prefix="" ></property>
d) <property environment="env"></property>
e) 系统自带
4. path: 一组文件的集合
二、操作:
1. echo:
<echo>输出内容</echo> 等价于 <echo message="输出内容"></echo>
2.文件操作:create、copy、delete、move、replace
<mkdir dir="要创建的目录"/>
<delete dir="要删除的目录"/>
Move:
<move file="${source.folder}/a.txt" tofile="${dest.folder}/a.txt(这里命名随意)"/>
<move file="${source.folder}/a.txt" todir="${dest.folder}/a.txt(这里命名必须一致)"/>
<move todir="${dest.folder}">
<fileset dir="${source.folder}">
<include name="**/*.txt"/> <-- 该目录下的所有txt文件(包含子目录) -->
<exclude name="**/*.txt"> <-- 该目录下的所有txt文件(包含子目录) -->
</fileset>
<move>
Copy:
<copy todir="${build.classes}" flatten="true" overwrite="false" > <-- flatten是放弃目录结构; overwrite表示覆盖已有文件 -->
<fileset dir="${src.dir}" includes="**/*.*" excludes="**/*.java"></fileset>
</copy>
replace: 很少使用
<repalce file="${source.folder}/a.txt" token="要替换的内容" value="新内容"/> <-- 可以复制多个文件 -->
<replace dir="${source.folder}" value="新内容"><-- 只可以复制一个文件 -->
<replacetoken><![CDATA[带有特殊字符的要被替换内容]]></replacetoken>
</replacetoken>
<replace file="${source.folder}/a.txt" value="defaultValue" propertyFile="a.properties">
<replacefilter token="要替换的内容"/> <-- 更改为默认值defaultValue-->
<replacefilter token="要替换的内容" value="value2"/> <-- 更改为value2-->
<replacefilter token="要替换的内容" property="name"/> <-- 更改为a.property中name的属性值-->
<replacefilter > <-- 更改为默value3-->
<replacetoken>要替换的内容</replacetoken>
<replacetoken>value3</replacetoken>
</replacetoken>