我想用一個用戶定義的軸(稱之爲「軸」)在Jenkins中設置一個多配置項目。然後,將使用與每個配置關聯的值調用${axis}/pom.xml
中的頂級Maven目標。問題是,如果確實存在(${axis}
,$axis
,$AXIS
和${env.axis}
全部失敗),我無法找到適當的語法。我認爲這將是shell語法,它似乎不是,但無論它應該是簡單的還是不可能的。可能嗎?Jenkins多配置項目用戶定義的軸環境變量
回答
我們使用JDK軸,只是使用JDK的名稱,所以我覺得你可以只使用axis/pom.xml
${axis}/pom.xml
應該在我的工作經驗。
您的Jenkins安裝是否在Windows上運行?
對於每個定製軸,都會創建一個環境變量。如果您的服務器運行的是Linux,則可以使用${axis}
來引用您的自定義軸,但在Windows上,您必須將其稱爲%axis%
%axis%語法確實在windows批處理命令中有效,但在運行Maven構建時不會解析。軸值作爲系統屬性傳遞給mvn命令(使用-D標誌) –
我明白OP已經以不同的方式解決了這個問題, Hudson在Windows和Linux中。
你需要的語法很簡單$axis/pom.xml
我定義的BuildProfile=compile unitTest integrationTest
而且在Maven 3配置的軸(在高級屬性)答:我還沒有在詹金斯試了一下的$BuildProfile/pom.xml
POM文件將所得構建了在控制檯下面的輸出(已編輯爲簡潔起見):
[1.7.0_25] $ C:\用戶... \ BIN \ mvn.bat乾淨安裝-V -B -DBuildProfile =編譯-f 編譯/ pom.xml的
[1.7.0_25 ] $ C:\用戶\ BIN \ mvn.bat乾淨的安裝-V -b -DBuildProfile =單元測試-f 單元測試/ pom.xml的
[1.7.0_25] $ C:\用戶。 .. \ bin \ mvn.bat clean install -V -B -DBuildProfile = integrationTests -f integrationTests/pom.xml
- 1. Jenkins中的預配置環境變量
- 2. Jenkins環境變量的Android配置
- 3. Jenkins Maven項目環境變量
- 4. Jenkins環境變量
- 5. Jenkins管道環境變量
- 6. 定義環境變量JAVA_HOME
- 7. 使用自定義的環境變量
- 8. 如何在VC++項目中定義環境變量/宏?
- 9. 子項目的Xcode環境變量
- 10. 如何配置Hibernate的環境變量
- 11. (環境)變量爲當前用戶的Jenkins API密鑰?
- 12. 用於項目設置的Qt Creator環境變量
- 13. 使用環境變量或配置/環境來存儲配置值
- 14. Redmon的用戶運行環境變量不加載用戶的環境變量
- 15. 設置docker-compose環境變量以正確啓動Jenkins與自定義java System.Property
- 16. 如何獲取用戶定義的環境變量?
- 17. PHP中的自定義環境變量
- 18. 從環境變量配置舞者?
- 19. 根據環境變量配置vimrc
- 20. Windows環境變量與配置文件
- 21. SMTP配置環境變量pickup pickup directoryocation
- 22. jenkins中訪問環境變量
- 23. Jenkins查看:顯示環境變量
- 24. jenkins環境變量中沒有SVN_REVISION
- 25. Jenkins插件開發 - 環境變量
- 26. Jenkins沒有看到GIT環境變量
- 27. 設置環境變量內目標
- 28. 使用docker-compose.yml插入環境變量定義中的變量
- 29. 「AWS配置」不會使用環境變量或配置文件
- 30. 針對多個項目/環境的Firebase配置
感謝您的回答 - 我無法快速解決此問題,因此我使用了完全不同的構建框架。 – ajk8