Ant 構建文件

2022-07-19 10:09 更新

一般來說,Ant 的構建文件默認為 build.xml,放在項目頂層目錄中。然而,并沒有限制構建文件必須命名為 bulid.xml,也并不限制放在項目頂層目錄中。你可以將構建文件命名為其他名字,也可以將它放在項目的其他地方。

這個教程將以簡單的方式向你展示如何利用 Apache Ant 來自動地構建和部署項目的過程。在完成本教程的學習以后,你將會發(fā)現(xiàn)你已經(jīng)具備下一階段學習 Apache Ant 中等水平的專業(yè)知識 。

1.project

例如:

<project name="Cesium" default="combine">

屬性:

  • name : 項目名稱
  • default:指定運行的target名稱,沒有指定時使用缺省的target;
  • basedir:基準路徑,其他的相對路徑都是基于這個基準路徑的;
  • description:項目描述信息。 

2.target

<target name="combine" depends="build,combineJavaScript" description="Combines all source files into a single stand-alone script." />

注意:一個target可以依賴于其他target。例如combine依賴于 build target 和 combineJaveScript target,ant 會按照 depends 中 target 出現(xiàn)的順序依次執(zhí)行,并且每個 target 只會被執(zhí)行一次,即使有多個target依賴于他。

target有以下屬性:

  • name:target名稱,這個屬性是必須的;
  • depends:依賴目標,非必須
  • if:當屬性設置時才執(zhí)行該target,非必須;
  • unless:當屬性沒有設置時才執(zhí)行該target,非必須;
  • description:target的描述信息,非必須;

3.task

Task分為內置task和自定義task,每個task都是一段可執(zhí)行的代碼。

  1. 內置task
    <copy file="${requirejsPath}/require.min.js" tofile="${cesiumViewerOutputDirectory}/require.js" />
  2. 自定義task
    調用任務:
    <glslToJavascript minify="${build.minification}" minifystatefile="${buildDirectory}/minifyShaders.state">
        <glslfiles dir="${shadersDirectory}" includes="**/*.glsl" />
        <existingjsfiles dir="${shadersDirectory}" includes="**/*.js" excludes="*.profile.js" />
    </glslToJavascript>
    定義任務:
    <scriptdef name="glslToJavascript" language="javascript" src="${tasksDirectory}/glslToJavaScript.js" manager="bsf" classpathref="javascriptClassPath" loaderref="javascript.loader">
                <attribute name="minify" />
                <attribute name="minifystatefile" />
                <element name="glslfiles" type="fileset" />
                <element name="existingjsfiles" type="fileset" />
    </scriptdef>

創(chuàng)建一個文件命名為 build.xml 的文件,存儲在你電腦的任意地方 ,并包含以下的內容:

<?xml version="1.0"?>
<project name="Hello World Project" default="info">
   <target name="info">
      <echo>Hello World - Welcome to Apache Ant!</echo>
   </target>
</project>


以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號