Ant構建文件解析


<?xml version="1.0" encoding="UTF-8"?>
<!-- 在Ant腳本中,project是這個XML文檔的根結點 ,project有以下幾個屬性:-->
<!-- name:指明構建任務的名稱,一般情況下選擇要構建的項目名稱即可 -->
<!-- default:一個項目可以定義多個target。target就是Ant要執行的動作,在執行Ant時可以選擇執行哪個target。
    當沒有選擇執行哪個target時,使用project的default屬性指定的target。在調用 Ant腳本時,可以指定要運行的target,
    在沒有指定target時,就要使用default指定的target,在這里default屬性是必須指定的。-->
<!-- basedir:Ant腳本工作的根路徑,在一般情況下,我們會把Ant腳本放在構建項目的根目錄下,這種情況下的basedir屬性的值就可以是".",即把當前目錄作為Ant腳本工作的根目錄。 -->
<project name="HelloWorld" default="run" basedir=".">
     <!-- property用於描述Ant腳本中的屬性和Ant腳本這外的properties屬性文件。
         property相當於定義了一個變量, 這個變量在整個Ant腳本中可以使用。 如:-->
     <target name="prop">
         <!-- Ant腳本定義的工作根目錄 -->
         <echo message="${basedir}" />
         <!-- Ant版本 -->
         <echo message="${ant.version}" />
         <!-- Ant腳本文件 -->
         <echo message="${ant.file}" />
         <!-- Ant腳本定義的工作名稱 -->
         <echo message="${ant.project.name}" />
         <!-- Ant使用的JDK版本 -->
         <echo message="${ant.java.version}" />
          <!-- 操作系統 -->
         <echo message="${os.name}" />
         <!-- 把所有的環境變量取出放在env中 ,在后面的程序中可以使用${env.變量名稱}來取出-->
         <property environment="env" />
         <echo message="${env.JAVA_HOME}" />
         <echo message="${env.TOMCAT_HOME}" />
     </target>
    <property name="src" value="src"/>
    <property name="dest" value="build/classes" />
    <property name="lib" value="build/lib" />
    <property name="hello_jar" value="build/lib/hello.jar" />
    <!-- 在Ant腳本中把想要做的事情用target描述,每個target描述一件事情,target有以下幾個屬性: -->
    <!-- name:target名稱,name屬性是必須指定的 -->
    <!-- depends:指明各個target之間的依賴關系,一個target可能依賴於其它的target。如果一個target依賴於多個其他的target,只需要在depends中用逗號隔開即可。
        depends屬性是可選的,不是必須指定的。 -->
    <!-- if:指定target所需設定的屬性名。 -->
    <!-- unless:指定target所需清除的屬性名 -->
    <!-- description:簡單描述target功能。這些描述可由-projecthelp命令在DOS命令行中輸出 -->
    <target name="init">
        <mkdir dir="${dest}" />
        <mkdir dir="${lib}" />
    </target>
    <target name="complie" depends="init">
        <javac srcdir="${src}" destdir="${dest}" />
    </target>
    <target name="build" depends="complie">
        <jar destfile="${hello_jar}" basedir="${dest}" >
            <manifest>
                <attribute name="Main-Class" value="HelloWorld" />
            </manifest>
        </jar>
    </target>
    <target name="run" depends="build">
        <java classname="com.helloworld.HelloWorld" classpath="${hello_jar}" />
        <echo message="${hello_jar}" />
    </target>
    <target name="clean">
        <delete file="${hello_jar}" />
        <delete dir="${dest}" />
        <delete dir="${lib}" />
    </target>
</project>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM