ant 编译封装
ant 编译打包
ant 编译打包
<?xml version="1.0" ?>
<project name="structured" default="archive" >
<property name="lib.dir" value="lib" />
<path id="libPath" >
<fileset file="${lib.dir}" includes="**/*.jar"></fileset>
</path>
<libfileset></libfileset>
<target name="init">
<mkdir dir="build/classes" />
<mkdir dir="dist" />
</target>
<target name="compile" depends="init" >
<javac srcdir="src" destdir="build/classes">
<classpath refid="libPath"></classpath>
</javac>
</target>
<target name="archive" depends="compile" >
<jar destfile="dist/project.jar" basedir="build/classes">
<fileset dir ="${lib.dir}" includes ="**/*.jsp"/>
</jar>
</target>
<target name="clean" depends="init">
<delete dir="build" />
<delete dir="dist" />
</target>
</project>
/////元素说明
三.build.xml元素简介:
1. 根元素"project":<project name=''工程名称" default="工程默认的target元素(必须指定)" basedir="工程基路径(如果设置为'.'就表示工程基路径为build.xml文件所在的路径)">;
2. target元素:<target name="任务名称" depends="执行本target之前必须完成的target">;
3. property元素:<property name="属性名" value="属性值">;另:<property environment="env"/> <property name="servletpath" value="${env.CATALINA_HOME}/common/lib/servlet-api.jar"/>,以上代码设置了一个系统 环境属性env,通过它可以访问系统环境变量,${env.CATALINA_HOME}代表了CATALINA_HOME系统环境变量;
4. mkdir元素:<mkdir dir="指定需创建的目录">,如果路径内容以"/","\"或"c:\"之类开始,就表示绝对路径,否则表示相对路径,相对路径的基路径取决于project元素的basedir属性;
5. copy元素:<copy todir="指定把文件拷贝到哪个目录">
<fileset dir="指定从哪个目录拷贝文件">
<include name="指定需要拷贝哪些文件"/>
<exclude name="指定不需要拷贝哪些文件"/>
</fileset>
</copy>
(对于<include name="WEB-INF/**">表示需要拷贝WEB-INF目录下所有的文件,子目录及子目录下的文件,如果是<include name="WEB-INF/*.*">表示只拷贝WEB-INF目录下所有的文件,不包含子目录及子目录下的文件);
6. javac元素:用来编译Java源程序,<javac srcdir="Java源程序存放的目录" destdir="生成的class文件存放的目录,目录结构与package语句一致" classpath="在编译时需引用的jar文件路径(多个文件路径间用':'号分隔)">javac>;
7. war元素:
<war warfile=”生成的war文件名” webxml=”web应用的web.xml文件”>
<lib dir=”web应用的lib目录”/>
<classes dir=”web应用的classes目录”/>
<fileset dir=”指定把该目录下的所有文件加入到包中”/>
</war>;
8. echo元素: 它的作用与Dos的echo命令相似,用于向控制台回显文本,<echo message=”文本内容”/>或<echo>文本内容</echo>;
9. jar元素: <jar jarfile=”打包的jar文件名”><fileset dir=”指定需打包的文件目录”/></jar>;
10. javadoc元素: <javadoc packagenames="${packages}" sourcepath="${build.src}" destdir="${build.javadocs}" author="true" version="true" use="true" splitindex="true" windowtitle="${Name} API" doctitle="${Name}"><classpath refid="classpath"/>javadoc>;
ant 编译打包
<?xml version="1.0" ?>
<project name="structured" default="archive" >
<property name="lib.dir" value="lib" />
<path id="libPath" >
<fileset file="${lib.dir}" includes="**/*.jar"></fileset>
</path>
<libfileset></libfileset>
<target name="init">
<mkdir dir="build/classes" />
<mkdir dir="dist" />
</target>
<target name="compile" depends="init" >
<javac srcdir="src" destdir="build/classes">
<classpath refid="libPath"></classpath>
</javac>
</target>
<target name="archive" depends="compile" >
<jar destfile="dist/project.jar" basedir="build/classes">
<fileset dir ="${lib.dir}" includes ="**/*.jsp"/>
</jar>
</target>
<target name="clean" depends="init">
<delete dir="build" />
<delete dir="dist" />
</target>
</project>
/////元素说明
三.build.xml元素简介:
1. 根元素"project":<project name=''工程名称" default="工程默认的target元素(必须指定)" basedir="工程基路径(如果设置为'.'就表示工程基路径为build.xml文件所在的路径)">;
2. target元素:<target name="任务名称" depends="执行本target之前必须完成的target">;
3. property元素:<property name="属性名" value="属性值">;另:<property environment="env"/> <property name="servletpath" value="${env.CATALINA_HOME}/common/lib/servlet-api.jar"/>,以上代码设置了一个系统 环境属性env,通过它可以访问系统环境变量,${env.CATALINA_HOME}代表了CATALINA_HOME系统环境变量;
4. mkdir元素:<mkdir dir="指定需创建的目录">,如果路径内容以"/","\"或"c:\"之类开始,就表示绝对路径,否则表示相对路径,相对路径的基路径取决于project元素的basedir属性;
5. copy元素:<copy todir="指定把文件拷贝到哪个目录">
<fileset dir="指定从哪个目录拷贝文件">
<include name="指定需要拷贝哪些文件"/>
<exclude name="指定不需要拷贝哪些文件"/>
</fileset>
</copy>
(对于<include name="WEB-INF/**">表示需要拷贝WEB-INF目录下所有的文件,子目录及子目录下的文件,如果是<include name="WEB-INF/*.*">表示只拷贝WEB-INF目录下所有的文件,不包含子目录及子目录下的文件);
6. javac元素:用来编译Java源程序,<javac srcdir="Java源程序存放的目录" destdir="生成的class文件存放的目录,目录结构与package语句一致" classpath="在编译时需引用的jar文件路径(多个文件路径间用':'号分隔)">javac>;
7. war元素:
<war warfile=”生成的war文件名” webxml=”web应用的web.xml文件”>
<lib dir=”web应用的lib目录”/>
<classes dir=”web应用的classes目录”/>
<fileset dir=”指定把该目录下的所有文件加入到包中”/>
</war>;
8. echo元素: 它的作用与Dos的echo命令相似,用于向控制台回显文本,<echo message=”文本内容”/>或<echo>文本内容</echo>;
9. jar元素: <jar jarfile=”打包的jar文件名”><fileset dir=”指定需打包的文件目录”/></jar>;
10. javadoc元素: <javadoc packagenames="${packages}" sourcepath="${build.src}" destdir="${build.javadocs}" author="true" version="true" use="true" splitindex="true" windowtitle="${Name} API" doctitle="${Name}"><classpath refid="classpath"/>javadoc>;