ant编译java文件并声称jar文件以及运行编译的class文件

<?xml version="1.0"?>
    <project name="Hello world" default="pack">

     <!-- properies -->
        <property name="src.dir" value="src" />
        <property name="classes.dir" value="classes" />
        <property name="dist.dir" value="dist" />
    	<property name="lib.dir" value="lib" />

        <!-- 定义classpath -->
        <path id="master-classpath">
            <fileset file="${lib.dir}/*.jar" />
            <pathelement path="${classes.dir}"/>
        </path>

        <target name="delete">
            <echo>删除Classes目录下面的无用文件</echo>
        	<delete dir="${classes.dir}"></delete>
        	<!--
        	<echo>删除Dist目录下面的无用jar文件</echo>
        	<delete dir="${dist.dir}"></delete>
        	-->
        	<echo>清除完毕</echo>
        </target>
    	<!-- 初始化任务 -->
        <target name="init" depends="delete">
        	<echo message="下面开始初始化任务 ${src.dir}"></echo>
        </target>
    	

        <!-- 编译 -->
        <target name="compile" depends="init" description="compile the source files">
        	<echo>下面开始编译java类文件</echo>
            <mkdir dir="${classes.dir}"/>
            <javac srcdir="${src.dir}" destdir="${classes.dir}" target="1.5">
                <classpath refid="master-classpath"/>
            </javac>
        	<echo>开始转移后缀不为.java的文件</echo>
        	<copy todir="${classes.dir}">
        	    <fileset dir="${src.dir}" includes="*.properties,*.xml,*.cfg" excludes="*.java"></fileset>
        	</copy>
        </target>

        <!-- 测试 -->
        <target name="test" depends="compile" description="run junit test">
        	<echo>下面开始测试${classes.dir}</echo>
            <fail if="tests.failed">
            
            </fail>
        </target>

        <!-- 打包成jar -->
        <target name="pack" depends="test" description="make .jar file">
         <echo>下面开始打包jar文件</echo>
        	<echo>下面开始生成dist目录</echo>
        	<mkdir dir="${dist.dir}" />
        	<echo>dist目录生成成功</echo>
        	<echo>下面开始打包</echo>
            <jar destfile="${dist.dir}/server.jar" basedir="${classes.dir}">
                <manifest >
                    <attribute name="Main-Class" value="logic.Logic"/>
                	<attribute name="Class-Path" value="mysql-connector-java-5.0.2-beta-bin.jar log4j-1.2.15.jar"/>
                </manifest>
            </jar>
        	<echo>打包成功</echo>
        	<echo>全部操作完成</echo>
        </target>
    	<!-- 运行 -->
    	<!--
    	<target name="run" depends="pack" >
    		<copy todir="${dist.dir}">
    		      <fileset dir="${lib.dir}" includes="*.jar"></fileset>
    		</copy>
    		<java ></java>
    	    <java jar="${dist.dir}/server.jar" fork="true"/>
    		<echo>开始运行java程序</echo>
    	</target>
    	-->
    	<!--
    	<target name="run" depends="pack" description="run logic.Logic">
    	    <java classname="logic.Logic" fork="true" >
    	    	<classpath refid="master-classpath"/>
    	    	<arg value="Ant"/>
    	    </java>
    		<echo>开始运行java程序</echo>
    	  </target>
    	  -->
    </project>

其中src目录下面是java源文件
classes目录下面是编译以后的class文件
dist目录下面存放生成的jar文件
lib目录下面是我们需要引用的jar文件

你可能感兴趣的:(java,xml,ant)