我目前正在尝试使用jenkinsfile在jenkins中实现管道,我正在Windows机器上执行maven项目。我正在jenkins创建一个管道工作,我已经在我的github存储库中检查了这个文件,当我在jenkins中运行这个工作时,我收到了以下错误。
我的jenkinsfile:
pipeline {
agent any
stages {
stage('Compile stage') {
steps {
maven(maven : 'Maven_3.5.2'){
bat "mvn clean compile"
}
}
}
stage('testing stage') {
steps {
maven(maven : 'Maven_3.5.2'){
bat "mvn test"
}
}
}
stage('deployment stage') {
steps {
maven(maven : 'Maven_3.5.2'){
bat "mvn deploy"
}
}
}
}
}
当我通过jenkins工作运行时,我得到以下错误 - 詹金斯错误:
java.lang.NoSuchMethodError:找不到“withMaven”这样的DSL方法 步骤[archive,bat,build,catchError,checkout,deleteDir, dir,dockerFingerprintFrom,dockerFingerprintRun,echo,emailext, emailextrecipients,envVarsForTool,error,fileExists,getContext, git,input,isUnix,library,libraryResource,load,mail,milestone, node,parallel,powershell,properties,pwd,readFile,readTrusted, resolveScm,重试,脚本,sh,睡眠,阶段,藏匿,步骤,svn, 超时,时间戳,tm,工具,unarchive,unstash, validateDeclarativePipeline,waitUntil,withContext,withCredentials, withDockerContainer,withDockerRegistry,withDockerServer,withEnv, wrap,writeFile,ws]或符号[all,allOf,always,ant, antFromApache,antOutcome,antTarget,any,anyOf,apiToken, 架构,archiveArtifacts,artifactManager,authorizationMatrix, batchFile,booleanParam,branch,
任何帮助?
答案 0 :(得分:11)
这意味着您没有withMaven
作为可用的DSL方法。大多数情况下,这意味着您没有安装插件。在这种情况下,需要Pipeline Maven插件。 https://wiki.jenkins.io/display/JENKINS/Pipeline+Maven+Plugin
答案 1 :(得分:2)
除了Rob Hales的回答之外,它在Jenkins ver中被称为“Pipeline Maven Integration Plugin”。 2.73.3或更高版本
答案 2 :(得分:1)
试试这个:
pipeline {
agent any
tools {
maven 'Maven_3.5.2'
}
stages {
stage('Compile stage') {
steps {
bat "mvn clean compile"
}
}
stage('testing stage') {
steps {
bat "mvn test"
}
}
stage('deployment stage') {
steps {
bat "mvn deploy"
}
}
}
}
答案 3 :(得分:0)
您需要安装所有列出的“管道”插件,错误不再存在。
答案 4 :(得分:0)
Jenkins中有两个免费的Maven集成插件。
有一个标准的Maven集成插件,它添加了Maven项目,以及Maven构建作业中的Maven构建功能的广泛列表。还有一个Pipeline Maven Integration插件,如果缺少该插件,则会导致此管道错误。
当开发人员安装了 Maven Integration 插件而不是 Pipeline Maven Integration 插件时,就会发生withMaven DSL error。
NoSuchMethodError: No such DSL method 'withMaven' found among steps
只需安装正确的插件,然后重新运行Jenkins Maven构建作业。然后,Maven的构建作业应畅快运行。