用Ant構建指令碼(4)

2021-08-22 06:43:58 字數 1119 閱讀 9098

用ant構建指令碼(4)

五、ant相關

1、標識過濾器

乙個專案有一套標識,如果發現當乙個檔案被拷貝時,或許能自動進行擴充。當在這個支援任務中選擇了過濾器-拷貝行為,才支援這種方式。在buildfile中,通過過濾器任務或許能設定它。

因為這能導致很大的潛在危害,在任務中標識的標識名在檔案中必須以@token@的形式給出。這個標識語法匹配其它建立的系統的語法,該系統完成過濾並保留足夠地程式和指令碼語言的相交部分,如同文獻系統。

※※注意:如果在乙個檔案中出現了帶有@token@的標識,但卻又沒有任何過濾器與其相聯絡,這將不發生改變。因此,沒有避免的方法可以用,但是只要你選擇了合適的標識名,這不會產生任何問題。

警告:如果你拷貝二進位制檔案用過濾器來開啟,你會被中斷。因為這個特徵只適用於文字檔案。

2、象路徑一樣的結構

你可以指定path-和classpath-type引用,通過用「:」和「;」作為分隔符。ant會為當前作業系統轉換分隔符為正確的字元。

無論什麼情況下,象路徑一樣的值是需要指定的,元素巢狀也可以用。下面這個是通常的結構:

屬性的位置指定了乙個單個的檔案或羨慕基本目錄的相關目錄,路徑屬性可用帶冒號或分號分隔開的位置列表。它需要預先指定,換句話說,帶位置屬性的多個元素都應該被指定。

另外,通過巢狀的、和元素,能指定dirset、fileset和filelist。

如果你想為幾個任務使用同樣的路徑結構,你可以在同一級的target中用元素來定義它,然後通過id屬性來引用它。

例如:

3、命令列引數

有幾個帶引數的任務可以在命令列中得到處理。指定包含空格符的引數使它變得更容易,巢狀的arg元素也能使用。

value,乙個單個的命令列引數,能包含空格;

file,作為命令列引數的檔名,執行時以檔案的絕對名來代替;

path,作為象路徑的字串來處理,作為單個的命令列引數,可以使用「;」或「:」來作為分隔符,ant會把它轉換為本地平台的習慣。

line,命令列引數的空格定界線列表。

如果可能,盡量避免使用命令列方式。

4、參考

buildfile元素的id屬效能用來引用它們自己。這有助於到處複製乙個xml小片斷,例如:

可以寫成如下:

用ant執行遠端linux指令碼

2 儲存一下內容,命名為build.xml在d anthome目錄下 3 把jsch.jar複製到d anthome下 4 執行 ant lib d anthome 5 顯示 sshexec sshexec connecting to 172.10.10.89 22 sshexec cmd cd l...

用ant編寫自動編譯指令碼

第一步 ant的配置 1 在ant安裝之前需要安裝好jdk,並配置好j a home 2 新建環境變數ant home 值為ant的主目錄 3 在path中配置 ant home bin 4 在classpath中配置 ant home lib 5 配置完成之後,開啟命令列,輸入ant,當出現 bu...

ant指令碼學習

主要是流程 標籤。用的比較多的為檔案操作 編譯 打包 命令操作 自定義任務。流程類似就是做這個 copy 任務之前要先做 init 而且depends的只做一遍。編譯與打包 注意classpath與包名,main入口等等。檔案操作 使用svnant.jar的svn公升級 自定義任務 這裡比較有用的是...