<?xml version="1.0" encoding="UTF-8"?> <project basedir="." default="usage" name="TestPrjAndBuild"> <!-- 定义目录变量 --> <property name="project-name" value="TestPrjAndBuild" /> <!-- ====此处需要修改====.jar文件名 --> <property name="src.dir" value="src" /> <!-- src --> <property name="lib.dir" value="lib" /> <!-- lib --> <property name="build.dir" value="bin" /> <!-- bin --> <property name="jar-file-name" value="${project-name}.jar" /> <property name="main-class" value="com.test.MyMain" /> <!-- ====此处需要修改====main-class --> <!-- 定义classpath --> <path id="master-classpath"> <fileset dir="${lib.dir}"> <include name="**/*.jar" /> </fileset> <pathelement path="${build.dir}"></pathelement> </path> <target description="Build file usage info (default task)" name="usage"> <!-- 默认执行的Task --> <echo message=" " /> <echo message=" ${project-name} " /> <echo message="-------------------------------------------------------" /> <echo message=" Available Targets:" /> <echo message=" init - Init the directory" /> <echo message=" compile - Compiles the source code" /> <echo message=" copy-res - Copy the resources" /> <echo message=" jar - Generate an .jar for source code" /> <echo message=" run - Execute Main-Class" /> <echo message=" clean - Delete class files and .jar file" /> <echo message="-------------------------------------------------------" /> </target> <!-- 初始化${build.dir}目录 --> <target name="init"> <mkdir dir="${build.dir}" /> <mkdir dir="${lib.dir}" /> <!-- 是否有lib目录,没有则加上 --> </target> <!-- 编译 --> <target depends="init" name="编绎"> <javac encoding="UTF-8" debug="true" deprecation="on" destdir="${build.dir}" listfiles="on" failonerror="true" srcdir="${src.dir}"> <classpath refid="master-classpath" /> </javac> </target> <!-- 复制资源文件 --> <target name="复制资源文件"> <copy todir="${build.dir}"> <fileset dir="${src.dir}"> <exclude name="**/*.java" /> </fileset> </copy> </target> <!-- 运行 --> <target depends="编绎" name="运行"> <java classname="${main-class}" classpath="${build.dir}" fork="true" maxmemory="256m"> <classpath refid="master-classpath" /> <sysproperty key="file.encoding" value="UTF-8" /> <arg value="-h" /> </java> </target> <!-- 生成jar包 --> <target depends="编绎" name="打成jar包"> <jar basedir="${build.dir}" destfile="${jar-file-name}"> <manifest> <attribute name="Main-Class" value="${main-class}" /> <attribute name="Class-Path" value="" /> </manifest> </jar> </target> <!-- 清除 --> <target name="clean"> <delete dir="${build.dir}" /> <delete file="${jar-file-name}" /> </target> </project>