設置PATH環境變量如何PATH環境變量從Ant腳本如何從Ant腳本
如何從Ant腳本
回答
設置要通過螞蟻設置環境變量,嘗試調用exec任務,並設置在命令行中值。順便說一下,我沒有嘗試過,但它應該可以工作。
這是否爲<exec>
任務?
您可以設置環境變量,當您運行<exec>
任務:
<exec executable="${my.command}">
<env key="foo" value="bar"/>
<arg line="some value"/>
</exec>
您可以使用<property environment="env"/>
拓展的路徑:
<property environment="env"/>
<exec executable="${my.command}">
<env key="PATH" value="${env.PATH}:${my.directory}"/>
</exec>
如果這是一個需要環境的一些自定義任務變量,但不允許你在任務中設置環境變量,如果沒有設置,你可以嘗試設置它:
<property environment="env"/>
<property name="env.foo" value="bar!bar"/>
這威力一套名爲foo
到bar!bar!
值的環境變量。我記得有關此事的一些信息,但無法使其發揮作用。
你可以做的另一件事是讓一個ant腳本執行另一個腳本,並讓第一個ant腳本設置環境值。當我必須設置ANT_OPT
時,我這樣做了。
您可以使用setx命令設置環境變量。
對於SETX命令的幫助參考http://ss64.com/nt/setx.html
<exec executable="setx.exe">
<arg line="Path C:\jdk1.5.0_12\bin"/>
<arg line="/m"/>
</exec>
從setx文檔:「2)在本地系統上,由此工具創建或修改的變量將在未來的命令窗口中可用,但在當前的CMD.exe命令窗口中不可用。」 所以這不會作爲問題的解決方案,除非用戶想要打開一個新的shell。 – Jerry 2013-04-24 14:59:42
在螞蟻,性質是不變的,所以上述大衛的建議:
<property name="env.foo" value="bar!bar"/>
將無法正常工作。
但變量是可變的,所以此工程:
<variable name="env.foo" value="bar!bar"/>
這幹得不錯,但似乎是一個卑鄙的伎倆。
所以爲了您的具體問題,嘗試
<variable name="env.PATH" value="some:custom:value"/>
這是一個很好的答案,但請注意,變量任務不是標準Ant分佈的一部分;你必須安裝ant-contrib。 – 2013-08-14 16:45:27
此外,這實際上不會更新Windows環境變量只是ant屬性env.PATH – Clintm 2015-06-03 17:57:46
,因爲我沒有足夠的聲譽在<variable ...
建議,回答我的評論發表評論...: -/
在(」更新「)ant-contrib(額外的ANT包)任務是不叫<variable ...
但是<var ...
!
(但因爲我想的env.*
(由<property environment="env" ... />
任務)Java屬性/變量創建操作僅適用於任務/進程評估這些Java性能,這是有關它沒有爲我工作反正不會自動「同步回」到OS環境變量)
,我發現它的工作原理是報價變量
<exec executable="setx">
<arg line="Path "${env.Path};c:\testPath"" />
<arg line="/m" />
</exec>
的價值您可以使用擴展的路徑:
然後你就可以從ant
執行例如sh
到export
環境變量:
<property environment="env"/>
<exec executable="sh">
<arg value="-c"/>
<arg value="export PATH=${env.Path}:${myPath}"/>
</exec>
或執行你的命令,並設置env
與value
,像這樣:
<property environment="env"/>
<exec executable="${your.command}">
<env key="PATH" value="${env.PATH}:${your.directory}"/>
</exec>
- 1. 如何從Ant腳本
- 2. 如何使用Ant腳本
- 3. 如何編寫Ant腳本?
- 4. 如何從shell腳本運行ant腳本?
- 5. 無法從Ant腳本
- 6. 從SCONS運行ANT腳本
- 7. 與Ant腳本
- 8. 如何使用ant編譯NSIS腳本?
- 9. 的Android如何使用ant腳本
- 10. 如何在Ant腳本中使用MailLogger?
- 11. copydir在Ant腳本
- 12. Ant構建腳本
- 13. 如何在ant腳本中獲取ant任務的返回碼?
- 14. 詹金斯無法從Ant腳本
- 15. 從java類執行ant腳本
- 16. 運行Eclipse WindowTester從Ant腳本
- 17. 從ant腳本執行java類文件
- 18. 從Ant腳本執行遊戲
- 19. 訪問platform.properties從NBI ant腳本
- 20. ant腳本在運行ant腳本時忽略xml
- 21. 如何從Ant腳本執行VBScript文件?
- 22. 如何使用ant腳本從tomcat集羣中禁用節點?
- 23. 如何從ant腳本中刪除java System.out.println
- 24. 如何在Mac上從ant啓動shell腳本?
- 25. 如何設置Ant腳本將文件從Mac複製到Windows?
- 26. 如何從ant腳本爲shell設置環境變量?
- 27. 如何從ant腳本運行ruby文件?
- 28. 如何從ant構建運行ruby腳本作爲任務?
- 29. 如何使用ant腳本從url複製目錄?
- 30. 我如何將參數從Jenkins傳遞給Ant腳本?
第一種解決方案適用於我。我正在運行RHEL 5.4,並且必須在需要它的ant exec任務中設置我的PYTHONPATH。 – Alessandro 2013-02-14 13:44:44
在我的機器上(Win7),它必須是env.Path,而不是env.PATH。 – 2013-04-19 19:37:10
@NateGlenn在Unix和Java中(因此也是在Ant中),環境變量名稱區分大小寫。 'PATH'與'Path'和'path'不同。在Windows中,環境變量名稱不區分大小寫。因此,'Path',''Path'和'PATH'都是一樣的,但是當你使用Ant時,它們代表三個不同的變量。在Unix中,它始終是'PATH'。在Windows中,我甚至不確定它是否從機器到機器都是一樣的。您可以使用' '任務來查看您的系統對環境變量所做的工作。 –
2013-04-21 22:36:17