簡體   English   中英

Jenkins作業使用不同的Maven版本

[英]Jenkins job with different maven versions

我有一個行家詹金斯(Jenkins)工作,這是多工的一部分。 他曾經總是在Windows節點上運行,但是目前我們也創建了一些Linux節點,希望使用。 問題是在工作內部,在構建步驟中您必須選擇:

在此處輸入圖片說明

該Maven版本在構建作業時適用。 例如,此處應用的maven版本鏈接到為Windows安裝了maven的路徑。 因此,此路徑僅適用於Windows節點,因此,該作業無法由linux節點運行。 有沒有解決方法? 謝謝!

您可以使用Jenkins管道來實現。 只需在Jenkins>全局工具配置中設置兩個Maven配置。 一個用於Windows Maven,另一個用於Linux。

node {
def mvnHome
stage('Build') {
    // Run the maven build
    if (isUnix()) {
        mvnHome = tool 'Maven-linux'
        sh "'${mvnHome}/bin/mvn' clean package "
    } else {
        mvnHome = tool 'Maven-windows'
        bat(/"${mvnHome}\bin\mvn" clean package /)
    }
}

另一種方法是使用Jenkins 條件構建步驟插件

  • 創建自由職業
  • 在構建步驟中,選擇單個或多個條件步驟。
  • 在逃跑? 您可以選擇執行外殼
  • 在Builder中,選擇invoke-top-level-maven-target,然后選擇maven版本的maven-linux。 然后,您可以配置Maven目標和其他步驟
  • 再次在Build Step on上選擇單個或多個條件步驟。
  • 在逃跑? 您可以選擇執行Windows批處理命令
  • 在Builder中,選擇invoke-top-level-maven-target,然后選擇maven版本的maven-window。 然后,您可以配置Maven目標和其他步驟

Jenkins Job設置上述步驟。

配置您的Linux從站:

  • 管理詹金斯>管理節點>%node>配置>節點屬性
  • 然后指定位於您的從屬服務器上的mvn和java並填寫工具位置

暫無
暫無

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

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