日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

ant 中 if else - 學習筆記

 moonboat 2009-10-12

ant中的條件判斷實例:

ant中條件判斷這里有2種形式,一種是運用 target 的if and unless attributes,一種是運用ant-contrib中的if else。

第一種:
<project name="test" basedir="." default="">
    <condition property="test.exist">
        <and>
            <available file="test-1.0.jar" filepath="test/target/>
        </and>
    </condition>
    <target name="copy-target" if="test.exist" description="Test Copy">
        <copy todir="test/libdb" preservelastmodified="true">
            <fileset dir="test/target">
                <include name="test-1.0.jar"/>
            </fileset>
        </copy>
    </target>
    <target name="copy" unless="test.exist" depends="copy-target">
        <copy todir="test/libdb" preservelastmodified="true">
            <fileset dir="test/built">
                <include name="test-1.0.jar"/>
            </fileset>
        </copy>
    </target>
</project>
如果test/target中test-1.0.jar存在,就把它copy到test/libdb目錄下。
如果不存在就從test/built中把test-1.0.jar copy到test/libdb目錄下。

第二種:
1.先到http://ant-contrib./網站下載最新的ant-contrib.jar;
  1.1 copy ant-contrib.jar到ant安裝目錄下的lib目錄下,如果你想在你的工程中用這個if-else的tasks,就添加下面一行到你的 build.xml文件中:
<taskdef resource="net/sf/antcontrib/antcontrib.properties"/>

  1.2 也可以把ant-contrib.jar copy到一個相對獨立的目錄下,但是你在用的時候一定要指定這個目錄,以便于ant能找到它,例如(lib 目錄D:/ant-contrib),code如下:

<project name="test" basedir="." default="">
    <taskdef resource="net/sf/antcontrib/antcontrib.properties">
        <classpath>
            <pathelement location="D:/ant-contrib/ant-contrib-1.0b2.jar"/>
        </classpath>
    </taskdef>
    <available property="test.exist" file="test-1.0.jar" filepath="test/target"/>
    <target name="copy" description="Test Copy">
        <if>
            <isset property="test.exist"/>
            <then>
                <copy todir="test/libdb" preservelastmodified="true">
                    <fileset dir="test/target">
                        <include name="test-1.0.jar"/>
                    </fileset>
                </copy>
            </then>
            <else>
                <copy todir="test/libdb" preservelastmodified="true">
                    <fileset dir="test/built">
                        <include name="test-1.0.jar"/>
                    </fileset>
                </copy>
            </else>
        </if>
    </target>
</project>

2. available 釋意:
Available判斷某個類,或某個文件,或某個路徑。如果存在,則設置某個property。返回true.
其格式如下:
    判斷某個類是否存在:
    <available property="class.exist" classname="package.test" classpath ="dist/test.jar"/>
    判斷某個文件是否存在:
    <available property="file.exist" file="test.txt" filepath="src/test" type= "file"/>
    判斷某個資源是否存在:
    <available property="resource.exist" resource="package/test/test1.class" classpath="dist/test.jar"/>

3. ant-contrib參考地址:

http://ant-contrib./ant-contrib/manual/tasks/index.html

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多