<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    日出星辰

    Ant學(xué)習(xí)實(shí)例

    1.安裝Ant

    先從http://ant.apache.org/下載Ant,解壓到任一目錄下面,比如E:\Lab

    然后設(shè)置環(huán)境變量

    ANT_HOME=E:\Lab\apache-ant-1.8.2

    path=E:\Lab\apache-ant-1.8.2\bin

    最后驗(yàn)證是否安裝成功

    在dos中輸入ant,如果顯示

    Buildfile: build.xml does not exist!
    Build failed

    則安裝成功

    2.基礎(chǔ)元素

    project元素

    project元素是Ant文件的根元素

    project的屬性

    Attribute

    Description

    Required

    name

    項(xiàng)目名稱

    No

    default

    當(dāng)沒有指定target時(shí)使用的缺省target

    Yes

    basedir

    用于指定基路徑的位置。該屬性沒有指定時(shí),使用 Ant 的構(gòu)件文件的附目錄作為基準(zhǔn)目錄。

    No

    target元素

    target為Ant的基本執(zhí)行單元,它可以包含一個(gè)或多個(gè)具體的任務(wù)。多個(gè)target 可以存在相互依賴關(guān)系

    Ant會(huì)依照depends屬性中target出現(xiàn)的順序(從左到右)依次執(zhí)行每個(gè)target。然而,要記住的是只要某個(gè)target依賴于一個(gè)target,后者就會(huì)被先執(zhí)行。

    <target name="A"/>

    <target name="B" depends="A"/>

    <target name="C" depends="B"/>

    <target name="D" depends="C,B,A"/>

    假定我們要執(zhí)行target D。從它的依賴屬性來看,你可能認(rèn)為先執(zhí)行C,然后B,最后A被執(zhí)行。錯(cuò)了,C依賴于B,B依賴于A,所以先執(zhí)行A,然后B,

    然后C,最后D被執(zhí)行。

    一個(gè)target只能被執(zhí)行一次,即時(shí)有多個(gè)target依賴于它。

    若想更好的控制build過程,可以使用if或unless。

    if 屬性

        用于驗(yàn)證指定的屬性是否存在,若不存在,所在 target 將不會(huì)被執(zhí)行。

    unless 屬性

        該屬性的功能與 if 屬性的功能正好相反,它也用于驗(yàn)證指定的屬性是否存在,若不存在,所在 target 將會(huì)被執(zhí)行。

    property元素

    property元素可看作參量或者參數(shù)的定義(即經(jīng)常使用的變量),project 的屬性可以通過 property 元素來設(shè)定,也可在 Ant 之外設(shè)定。

    name是變量的名稱 value是變量的值,要用某個(gè)變量時(shí)使用${name}方式調(diào)用。

    3.完整示例

    創(chuàng)建一個(gè)java項(xiàng)目

    HelloWorld.java

    package com.test;
    
    public class HelloWorld {
    	public static void main(String[] args) {
    		System.out.println("Hello world");
    	}
    }

    編寫build.xml文件

    注:build.xml放在和src同級(jí)目錄,而不是在src下級(jí)目錄

    目錄結(jié)構(gòu)是

    MyProject <dir>
    |--lib <dir> --庫(kù)目錄
    |--classes <dir> --目的文件目錄
    |--src <dir> --源文件目錄
    |--doc <dir> --api文檔目錄
    |--build.xml

    <?xml version="1.0" encoding="UTF-8" ?>
    <project name="helloWorld" default="run" basedir=".">
    	<property name="src" value="src"/>
    	<property name="dest" value="build/classes"/>
    	<property name="lib" value="lib"></property>
    	<property name="hello_jar" value="hello1.jar"></property>
    	<!--初始化 之前執(zhí)行刪除操作-->
    	<target name="init" depends="clean">
    		<mkdir dir="${dest}"/>
    	</target>
    	<!--編譯生成class文件 -->
    	<target name="compile" depends="init">
    		<javac srcdir="${src}" destdir="${dest}"></javac>
    	</target>
    	<!--將編譯后的class文件打包-->
    	<target name="build" depends="compile">
    		<mkdir dir="${lib}"/>
    		<jar jarfile="${lib}/${hello_jar}" basedir="${dest}"></jar>
    	</target>
    	<target name="run" depends="build">
    		<java classname="com.test.HelloWorld" classpath="${lib}/${hello_jar}"></java>
    	</target>
    	<!--刪除-->
    	<target name="clean">
    		<delete dir="${dest}"></delete>
    		<delete dir="${lib}"></delete><!-- 是dir 刪除目錄 ,不是file 刪除文件-->
    	</target>
    </project>
    整個(gè)過程:初始化----編譯----打包---放到相應(yīng)的位置

    參考:

    http://www.cnblogs.com/philander/articles/1782254.html

    http://www.cnblogs.com/elric/archive/2011/03/19/1988840.html

    posted on 2011-09-14 22:03 日出星辰 閱讀(198) 評(píng)論(0)  編輯  收藏


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 国产精品无码一二区免费| 日韩在线不卡免费视频一区| 黄色成人网站免费无码av| 亚洲精品视频在线播放| 巨波霸乳在线永久免费视频| 亚洲黄色在线电影| 1000部夫妻午夜免费 | 亚洲Av无码乱码在线播放| 337p日本欧洲亚洲大胆人人| 四虎永久免费网站免费观看| 美女黄色毛片免费看| 亚洲中文字幕视频国产| 久久毛片免费看一区二区三区| 亚洲人成网站在线观看播放| 中文在线观看国语高清免费| 亚洲尹人九九大色香蕉网站| 久热中文字幕在线精品免费| 亚洲熟女综合色一区二区三区| 日本不卡免费新一二三区| 伊人久久国产免费观看视频| 精品国产亚洲一区二区三区| 最好看的中文字幕2019免费| 亚洲成A人片在线播放器| 国产又大又粗又硬又长免费| 成人网站免费大全日韩国产| 久久综合亚洲鲁鲁五月天| 大地资源二在线观看免费高清 | 亚洲av麻豆aⅴ无码电影| 国产在线精品观看免费观看 | 中文文字幕文字幕亚洲色| 真实乱视频国产免费观看| 一级做受视频免费是看美女 | 看全色黄大色大片免费久久| 国产精品免费久久| 亚洲成人免费电影| 国产成人免费一区二区三区| 中文字幕无线码中文字幕免费| 亚洲国产精品综合久久久| 亚洲?V无码成人精品区日韩 | 破了亲妺妺的处免费视频国产| 国产大片免费天天看|