>

우리는 새로운 메이븐 빌드를 만듭니다 :

def rtMaven = Artifactory.newMavenBuild()

이제이 rtMaven을 현재 단계와 다른 단계에서 재사용하려고합니다. 아래 코드와 같이 :

pipeline {
agent any
...
stages {
    stage('stage1') {
        steps {
            script {
                def rtMaven = Artifactory.newMavenBuild()
            }
    }
    stage('stage2') {
         steps {
            script {
                //REUSE rtMaven (now it's unknown)
            }
         }
     }
}

두 번째 단계에서 다시 정의하지 않고 rtMaven을 재사용 할 수 있습니까?

이제 다음과 같은 오류가 있습니다 :

groovy.lang.MissingPropertyException: No such property: rtMaven for class: groovy.lang.Binding

  • 답변 # 1

    전역 범위에서 var 정의

    def rtMaven = ''
    pipeline {
        agent any
        stages {
            stage('stage1') {
                steps {
                    script {
                        rtMaven = Artifactory.newMavenBuild()
                    }
                }
            }
        }
        stage('stage2') {
            steps {
                script {
                    echo "$rtMaven"
                }
            }
        }
    }
    
    

  • 이전 ruby on rails - Capybara 및 셀레늄 웹 드라이버로 새 개인 창 열기
  • 다음 php - 워드 프레스 - woocommerce 독일어 템플릿 수정