同学晚上问我Ant的东西,好久没有写过,忘了,于是拿起书,复习了一下。
<project name=" " default="deploy " basedir=".">
对于basedir不是特别的清楚,只知道:如果设置为".",就表示工程的基路径为build.xml所在的路径。
<property file="build.properties"/>
其中包含类似tomcat.home和webapps.home的内容,应用的方法同build.xml中定义的属性相同,都是类似于${tomcat.home}
<property name=" " value=" "/>
<path id="compile.classpath">
用来设置build.xml编译Java时需要的lib的位置,包含lib子目录下的JAR以及Tomcat服务器目录下的JAR
<target name="help">
一些echo message,具体什么作用还不是很清楚
<target name="clean-all">
delete dir,用来保证每次ant run时都是重新build和compile最新的文件
<target name="prepare">
mkdir dir,为compile,build,deploy做准备
<target name="compile" depends="prepare">
使用javac编译srcdir中的文件,放到destdir中
<target name="build" depends="compile">
比较复杂,不过主要就是复制web子目录下的内容,复制classes下的内容以及lib和properties文件
可以在build中使用<jar jarfile="${deploy.home}/${app.name}.war" basedir="${build.home}"/>来把basedir下的内容打包
<target name="deploy" depends="build">
copy file到todir,该file是build时产生的war文件
还可以包含<target name="javadoc" depends="compile">
产生一些JavaDoc
注意:
1. <property name=" " value="."/>,根据basedir的".",是否这里就意味着build.xml所在的目录
2 . value的值都是相对于开发目录而言的,一般的做法是在开发目录下根据property来mkdir,copy内容,deploy的时候才放入部署的目录(部署的路径一般放在build.properties文件中),deploy后可以删除mkdir的目录
3. 多个文件时,可以使用fileset,include,exclude来筛选需要的文件