Ant Script 通常是使用「外掛程式開發環境 (PDE)」來產生的,但也可以用手動方式或從其他 Script 產生它們。
PDE 確實會顯現 Ant 作業,以產生各種建置 Script。建置 Script 產生機能位於下列作業中。同時也會列出每一項作業適用的引數。
elements: |
將提取的項目。預期的格式為目錄檔格式中指定的 type@id[,version] 格式; |
buildDirectory: |
將在其中產生提取 Script,且特性和外掛程式專案將移出放到其中的目錄: |
directory: |
通往目錄檔的路徑; |
children: |
選用,指定是否應該呼叫產生所包含之外掛程式和片段的 Script。 預設值設為 true; |
cvspassfile: |
選用,CVS 密碼檔的名稱; |
fetchTag: |
選用,置換給定的值在目錄檔中提供的標示; |
configInfo: |
選用,這是一份指出目標配置的配置清單(以 '&' 符號分隔)。預設值是設為與平台無關; |
recursiveGeneration: |
選用,指定是否應該產生巢狀特性的提取 Script。預設值會設為 true。 |
elements: |
要建置的項目。 項目預期的格式為目錄檔格式中指定的 type@id[,version] 格式; |
buildDirectory: |
要建置的特性和外掛程式所在的目錄。外掛程式和特性必須分別位於 plugins 和 features 資料夾中; |
children: |
選用,指定是否應該呼叫產生所包含之外掛程式和片段的 Script。 預設值設為 true; |
recursiveGeneration: |
選用,指定是否應該呼叫產生所包含之特性的 Script。 預設值設為 true; |
devEntries: |
選用,這是一份將提供給編譯類別路徑的目錄清單(以逗點區隔); |
buildingOSGi: |
選用,指出目標是 3.x 或 2.1。
預設值是 true; |
baseLocation: |
選用,指出以 features/ 和 plugins/ 子目錄來包含目標 Eclipse 安裝的資料夾; |
configInfo: |
選用,這是一份指出目標配置的配置清單(以 '&' 符號分隔)。預設值是設為與平台無關; |
pluginPath: |
選用,這是從中尋找其他外掛程式的位置清單(以平台檔案分隔字元來分隔); |
archivesFormat: |
選用,這是一份配置及其預期輸出格式的清單(以 '&' 符號分隔)。 該格式在配置中會以橫線 (-) 區隔。支援的值如下:folder、tar、zip、antZip, 分別表示不保存、使用 tar 來建立保存檔、使用平台上可用的 info zip 版本、使用 ant zip。預設值是 antZip; |
product: |
選用,這是所建置 RCP 產品的位置路徑(以 '/' 分隔)。 路徑的第一個區段必須參照含有 .product 檔之外掛程式的外掛程式 ID; |
signJars: |
選用,指出產生的 Script 是否必須指派特性和外掛程式的 JAR。 預設值是 false。 簽章作業的參數係由下列 Ant 內容控制: sign.alias、sign.keystore 和 sign.storepass,會分別傳給 Ant signJar 作業的 alias、keystore 和 storepass 參數。預設值為 false; |
generateJnlp: |
選用,指出所建置的所有特性是否都應該產生 JNLP 檔; |
outputUpdateJars: |
選用,當設定之時,以更新網站格式來產生外掛程式和特性。 預設值是 false。 請注意,site.xml 不會產生也不會更新; |
groupConfiguration: |
選用,是否將所建置的所有配置分組到單一保存檔中; |
generateVersionsLists: |
選用,是否產生內容檔來列出所建置之特性和外掛程式的版本; |
filteredDependencyCheck: |
選用,限制在從特性建置這些可呼叫的項目期間,所要考量的該組外掛程式和特性; |
filterP2Base: |
選用,限制從 baseLocation 到考慮由 p2 安裝的那些位置,所要考量的該組外掛程式和特性; |
generateFeatureVersionSuffix: | 選用,是否產生特性版本字尾。 另請參閱Version Qualifiers; |
generatedVersionLength: |
選用,產生的特性版本字尾的長度。依預設會設為 28。 另請參閱Version Qualifiers; |
significantVersionDigits: |
選用,產生特性版本字尾時所使用的有效位數。
另請參閱Version Qualifiers; |
forceContextQualifier: |
選用,利用給定的值來取代外掛程式和特性所用的 .qualifier。 另請參閱Version Qualifiers; |
featureId: |
這個 ID 提供給產生的特性。 |
buildDirectory: |
要併入的特性和外掛程式(在 /features 和 /plugins 子目錄中)所在的目錄。產生的特性會放在 /features 子目錄中。 |
baseLocation: |
選用,指出包含已安裝之特性和外掛程式的資料夾 |
productFile: |
選用,產生之特性的基礎產品檔。 |
verify: |
是否利用解析器來確認提供的外掛程式和特性可以使用。
另外,這也決定了特性是否能夠正確處理將用 JAR 壓縮的特定平台專用片段和外掛程式。
如果本端環境提供了要併入特性的所有元素,verify 便應該設為 True。
如果必須從儲存庫中提取這些元素,請將 verify 設為 False,利用產生的特性來提取必要的外掛程式和特性,再利用 verify = True 來重新產生儲存器特性。
|
pluginPath: |
選用,這是從中尋找其他外掛程式的位置清單(以平台檔案分隔字元來分隔) |
configInfo: |
選用,這是一份指出目標配置的配置清單(以 '&' 符號分隔)。預設值是設為與平台無關; |
pluginList: |
選用,這是一份將併入產生的特性之外掛程式 ID 的清單(以逗點區隔)。(支援屬性,請參閱如下) |
featureList: |
選用,這是一份將併入產生的特性之特性 ID 的清單(以逗點區隔)。(支援屬性,請參閱如下) |
fragmentList: |
選用,這是一份將併入產生的特性之片段 ID 的清單(以逗點區隔)。(支援屬性,請參閱如下) |
buildPropertiesFile: |
選用,其內容應用來作為產生之特性的 build.properties 的內容檔位置。 |
includeLaunchers: |
選用,是否併入 equinox 啟動程式,預設值為 "true"。 |
eclipse.generateFeature 作業的 pluginList、featureList 和 fragmentList 引數全都支援屬性。這些引數的格式如下:
List = <element-id>[;<attribute>=<value>]* [,<element-id>[;<attribute>=<value>]*]*
每一個 attribute=value 組都會插入對應於給定元素所產生的 xml 中。範例:
featureList = org.eclipse.feature;optional=true pluginList = org.eclipse.plugin.A;unpack=true fragmentList=org.eclipse.fragment.a;os=win32,org.eclipse.fragment.b;os=linux;ws=gtk;arch=x86 <feature ...> ... <includes id="org.eclipse.feature" version="0.0.0" optional="true" /> ... <plugin id="org.eclipse.plugin.A" version="0.0.0" unpack="true" /> <plugin id="org.eclipse.fragment.a" version="0.0.0" os="win32" fragment="true" /> <plugin id="org.eclipse.fragment.b" version="0.0.0" os="linux" ws="gtk" arch="x86" fragment="true" /> ... </feature>
<eclipse.fetch elements="bundle@org.eclipse.osgi"
buildDirectory="c:\toBuild"
directory="directory.txt"
configInfo="win32,win32,x86 & linux, motif, x86"
/>
<eclipse.buildScript elements="bundle@org.eclipse.osgi"
buildDirectory="c:\toBuild"
archivesFormat="macosx, carbon, ppc - tar"/>
僅在 Eclipse 執行中時,先前說明的作業才能運作。在使用 Eclipse 作業執行 Ant Script 的特殊實務中,必須使用「Eclipse Ant 執行器」應用程式來執行 script。這個特殊實例的指令行如下:
java -jar plugins/org.eclipse.equinox.launcher_<version>.jar -application org.eclipse.ant.core.antRunner -buildfile build.xml
請注意,出現在應用程式之後的參數是傳給 Ant 的參數。