尝试添加POST操作时,我的jenkinsfile不再编译。最后一个应该在构建结束时显示到jenkins控制台输出。

第一部分是关于我的jenkinsfile代码,它的构建做得很好。

第二部分是添加到第一部分的补丁,任何构建都失败。

我想集成第一部分和第二部分以获得下文描述的预期输出,但无论如何插入,集成都失败了。我已经尝试了很多事情,现在我卡住了,所以任何帮助都将不胜感激。

//第一部分:我的基本代码

    node {
    def mvnHome
    stage('Preparation') { 
        git 'https://github.com/jglick/simple-maven-project-with-   tests.git'
      // Get the Maven tool.
      // ** NOTE: This 'M3' Maven tool must be configured
      // **       in the global configuration.           
      mvnHome = tool 'M3'
   }
    stage('Build') {
      // Run the maven build
      if (isUnix()) {
         sh "'${mvnHome}/bin/mvn' -Dmaven.test.failure.ignore clean package"
      } else {
         bat(/"${mvnHome}\bin\mvn" -Dmaven.test.failure.ignore clean package/)
      }
   }
   stage('Results') {
      junit '**/target/surefire-reports/TEST-*.xml'
      archiveArtifacts 'target/*.jar'
   }
 }

//第二部分:添加到前面代码的代码

post {
    always {
        echo 'I have finished and deleting workspace'
        // deleteDir() 
    }
    success {
        echo 'Job succeeeded!
    }
    unstable {
        echo 'I am unstable :/'
    }
    failure {
        echo 'I failed :('
    }
    changed {
        echo 'Things were different before...'
    }
}

控制台输出中预期的输出:“作业已成功!或者我不稳定:/或“我:(失败了”...取决于 jenkins 构建状态,并始终在每次新构建之前清理工作区

实际结果是来自控制台输出的错误消息:java.lang.NoSuchMethodError:在步骤[存档,蝙蝠,构建,捕获错误,结帐,删除,删除,目录......)中找不到这样的DSL方法“post”。