私は現在、jenkinsfileを使用してjenkinsにパイプラインを実装しようとしていますが、WindowsマシンでMavenプロジェクトを実行しています。私はjenkinsでパイプラインジョブを作成していますが、githubリポジトリでこのファイルをチェックインしました。jenkinsでジョブを実行しているときに、次のエラーが発生しています。
私のジェンキンスファイル:
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"
}
}
}
}
}
私はジェンキンスジョブを介してそれを実行しているときにエラーが発生しています-ジェンキンスエラー:
Java.lang.NoSuchMethodError:ステップ[アーカイブ、バット、ビルド、catchError、チェックアウト、deleteDir、dir、dockerFingerprintFrom、dockerFingerprintRun、echo、emailext、emailextrecipients、envVarsForTool、エラー、fileExists、getContext、gitにDSLメソッド「withMaven」が見つかりません、入力、isUnix、ライブラリ、libraryResource、ロード、メール、マイルストーン、ノード、パラレル、パワーシェル、プロパティ、pwd、readFile、readTrusted、resolveScm、再試行、スクリプト、sh、スリープ、ステージ、スタッシュ、ステップ、svn、タイムアウト、タイムスタンプ、tm、tool、unarchive、unstash、validateDeclarativePipeline、waitUntil、withContext、withCredentials、withDockerContainer、withDockerRegistry、withDockerServer、withEnv、wrap、writeFile、ws]または記号[all、allOf、always、ant、antFromApache、antOutcome、antTarget、any、 anyOf、apiToken、architecture、archiveArtifacts、artifactManager、authorizationMatrix、batchFile、booleanParam、branch、
何か助け?
これは、使用可能なDSLメソッドとしてwithMaven
がないことを意味します。ほとんどの場合、これはプラグインがインストールされていないことを意味します。この場合、Pipeline Mavenプラグインが必要です。 https://wiki.jenkins.io/display/JENKINS/Pipeline+Maven+Plugin
Rob Halesの答えに加えて、Jenkins ver。では「Pipeline Maven Integration Plugin」と呼ばれています。 2.73.3以降
これを試して:
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"
}
}
}
}