Hello World with Ant

來源:互聯網
上載者:User

        都說Linux環境下的程式員如果不會使用GNU make來構建和管理自己的工程,應該不能算是一個合格的專業程式員,至少不能稱得上是Unix程式員。

        而在一說到Ant的時候,很多人就把這兩個的功能對比來說,所以是否可以這樣說呢?如果不能用Ant來構建和管理自己的工程,應該不能算是一個合格的Java工程師呢?關於Ant和make的關係,這裡只說一句,與make相比,Ant完全由Java實現,具有跨平台的好處。

        說了這麼多,那麼Ant到底是用來幹什麼呢?你如果從網上查,都會這樣告訴你,這是一個構建工具,但又不僅限於構建。例如可以和Xdoclet配合產生Hibernate設定檔和Hibernate對應檔。

        要使用,就得下載、安裝,那麼就先說一下下載安裝。

        自己度娘或穀哥找一下Ant,然後解壓。接下來就埼一些配置:

        設定ANT_HOME環境變數,指向你解壓的Ant目錄。然後在Path中添加%ANT_HOME%\bin。這裡小科普一下,你在cmd中運行某個命令時,報不是內部命令這種錯的時候,就看一下這個命令所在的路徑是不是在Path中。

        完事之後,開啟cmd,打一下ant -version,看會不會出現ant的版本資訊,如果出現了呢就說明你的ant已經安裝好了。

        下面就開始進入Ant的天堂了,首先來瞭解一下Ant的基本使用

        首先,建立一建立一個空的檔案夾,我命名為testAnt,在這個檔案夾中建立一src/jianxin/ant的目錄,在ant中建立一個HelloWorld.java檔案:

package jianxin.ant;public class HelloWorld{public static void main(String[] args){System.out.println("Hello World");}}

        然後,在在testAnt中建立build.xml檔案

<project name="HelloWorld" basedir="." default="main">    <property name="src.dir"     value="src"/>    <property name="build.dir"   value="build"/>    <property name="classes.dir" value="${build.dir}/classes"/>    <property name="jar.dir"     value="${build.dir}/jar"/>    <property name="main-class"  value="jianxin.ant.HelloWorld"/>    <target name="clean">        <delete dir="${build.dir}"/>    </target>    <target name="compile">        <mkdir dir="${classes.dir}"/>        <javac srcdir="${src.dir}" destdir="${classes.dir}"/>    </target>    <target name="jar" depends="compile">        <mkdir dir="${jar.dir}"/>        <jar destfile="${jar.dir}/${ant.project.name}.jar" basedir="${classes.dir}">            <manifest>                <attribute name="Main-Class" value="${main-class}"/>            </manifest>        </jar>    </target>    <target name="run" depends="jar">        <java jar="${jar.dir}/${ant.project.name}.jar" fork="true"/>    </target>    <target name="clean-build" depends="clean,jar"/>    <target name="main" depends="clean,run"/></project>

        開啟cmd視窗,進入testAnt的根目錄,運行ant:

        

        至此,一個工程中需要的清理、編譯、打包、運行就都通過Ant協助我們完成了。

        此文只是一個Ant的Hello World,從上面的build的編寫中不難發現一些熟悉的字樣,deltete、mkdir、javac、jar、java…,這些命令在cmd的命令列中都是存在的,所以無論Ant如何變化,只要用你能手動寫cmd來完成對項目的管理,那麼都可以通過查詢Ant的文檔,然後編寫Ant來自動完成,現在來看,Ant被主要被用來構建,但又不局限於構建,就清楚明白了。

        關於project、target,property三個標籤,不多說,自己做一遍上面我敲的例子後,如果還是不明白,那麼留言討論。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.