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文件
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章