在ant中,要取得環境變數可以透過environment property。讓我們直接看sample code: 假設我們的系統變數如下(在cmd中執行set):
PSModulePath=C:\Windows\system32\WindowsPowerShell\v1.0\Modules\ PUBLIC=C:\Users\Public SESSIONNAME=Console SystemDrive=C: SystemRoot=C:\Windows TEMP=C:\Users\TonyLin\AppData\Local\Temp TMP=C:\Users\TonyLin\AppData\Local\Temp USERDOMAIN=TonyLin-PC USERNAME=TonyLin USERPROFILE=C:\Users\TonyLin VBOX_INSTALL_PATH=C:\Program Files\Oracle\VirtualBox\ windir=C:\Windows
假設我們想存取windir,在ant中我們可以這樣寫:
<?xml version="1.0" encoding="UTF-8"?> <project name="project" default="test env"> <property environment="env"/> <target name="test env"> <echo>${env.windir}</echo> </target> </project>
執行結果如下:
Buildfile: D:\Workspace\AntPractice\build.xml test env: [echo] C:\Windows BUILD SUCCESSFUL Total time: 1 second
是不是很簡單呢? 唯一需要注意的是: 這是有大小寫區分,以%PATH%為例。在windows cmd中,輸入echo %PATH%或%Path%都能夠取得這個系統變數,但在ant中使用${env.PATH}就取不到了!如果在windows cmd中下set,你可以發現它應該Path;在linux下則是PATH。以PATH而言,在windows必須使用${env.Path},linux則是${env.PATH}。在使用時千萬注意系統變數的大小寫喔!
留言
張貼留言