簡體   English   中英

Jenkins 腳本管道作業失敗,因為 GLOBAL MAVEN_OPTS 在腳本中不可用

[英]Jenkins scripted pipeline job failing because of GLOBAL MAVEN_OPTS not available in script

1.我有 Jenkins 管道作業,它在某個 maven 項目上執行簡單的演示任務“mvn clean”。 2. mvn clean 將從公司的中央 maven 存儲庫下載一些插件 jar。 3. 機器在全局/系統級別配置了 MAVEN_OPTS。 4. 當我作為用戶 'jenkins' 從 shell 執行相同的 'mvn' clean 命令時,它工作正常並且構建成功。 5. 但是當我的 Jenkins 管道執行相同的命令時失敗並拋出認證錯誤。 6. 以下是錯誤“PKIX 路徑構建失敗:sun.security.provider.certpath.SunCertPathBuilderException:無法找到請求目標的有效證書路徑”

我的一位同事向我解釋了以下原因。 作業失敗,因為 Jenkins 啟動另一個子進程(mvn clean)並且該子作業無權訪問系統級環境變量。 解決方案是

  1. 在每個 mvn 命令中放置證書路徑,如下所示“mvn clean -Djavax.net.ssl.trustStore=/etc/pki/tls/certs/wd-truststore -Djavax.net.ssl.trustStorePassword=changei”

或 2. 配置 jenkins 作業並在“執行 shell”中的“構建環境”部分提及命令以執行 shell 腳本以設置 MAVEN_OPTS,如下所示

“echo mavenOpts='-Xmx2g -Djavax.net.ssl.trustStore=wd-truststore -Djavax.net.ssl.trustStorePassword=changeit”

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM