Ant—使用Ant构建一个简单的Java工程(两)
? ? ? ? 博客《Ant—使用Ant構建一個簡單的Java項目(一)》演示了使用Ant工具構建簡單的Java項目,接著這個樣例來進一步學習Ant:
? ? ? ? 上面樣例須要運行多條ant命令才干運行Test類中的main函數,能不能簡化須要運行命令呢?答案是肯定的,能夠將build.xml文件里的腳本改成以下的腳本:
<?xml version="1.0" encoding="UTF-8"?> <project name="test" default="run-Test" basedir="."> <property name="src" value="src"/> <property name="lib" value="build/lib"/> <property name="dest" value="build/classes"/> <property name="np_jar" value="build/lib/test.jar"/> <target name="create-path"> <mkdir dir="${dest}"/> <mkdir dir="${lib}"/> </target> <target name="create-class" depends="create-path"> <javac srcdir="${src}" destdir="${dest}"/> </target> <target name="create-jar" depends="create-class"> <jar destfile="${np_jar}" basedir="${dest}"> <manifest> <attribute name="Main-Class" value="Test"/> </manifest> </jar> </target> <target name="run-Test" depends="create-jar"> <java classname="Test" classpath="${np_jar}"/> </target> <target name="clean"> <delete file="${np_jar}"/> <delete dir="${dest}"/> <delete dir="${lib}"/> </target> </project>
? ? ? ? 這時僅僅需運行ant命令就能夠操作完畢須要依次運行“ant create-path”、“ant create-class”、“ant create-jar” 和“ant run-Test”命令才干完畢的操作,那么它是如何做到的呢?? ? ? ? a、因為project標簽default屬性定義的值為run-Test,所以當直接運行ant命令時ant會首先運行name為run-Test的target;
? ? ? ? b、因為name為run-Test的target中的depends屬性指向name為create-jar的target,所以會先運行name為create-jar的target;
? ? ? ? c、因為name為create-jar的target中的depends屬性指向name為create-class的target。所以會先運行name為create-class的target;
? ? ? ??d、因為name為create-class的target中的depends屬性指向name為create-path的target,所以會先運行name為create-path的target。
? ? ? ? e、因為name為create-path的target沒有depends屬性。所以ant命令終于先運行該target。
? ? ? ? 由此可見。此時單獨運行ant命令事實上就是依次運行了“ant create-path”、“ant create-class”、“ant create-jar” 和“ant run-Test”命令。
? ? ? ? DOS窗體單獨運行ant命令的結果例如以下圖:
版權聲明:本文博客原創文章。博客,未經同意,不得轉載。
轉載于:https://www.cnblogs.com/gcczhongduan/p/4714772.html
總結
以上是生活随笔為你收集整理的Ant—使用Ant构建一个简单的Java工程(两)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux内核的冒险md来源释义# 14
- 下一篇: Hadoop 新增删除节点