2016-11-24 8 views
1

現在、artifactory Jenkinsプラグインを使用してパイプラインを作成しようとしています。私がjenkinsフリースタイルプロジェクトのビルドステップとしてプラグインを使用すると、完全に機能します。パイプライン内から直接mavenを実行すると、完全に動作します。以下のスクリプトを使用してArtifactoryプラグインを使用してmavenを実行すると、失敗します。私が得るエラーは:Jenkins ArtifactoryプラグインがMavenビルド中にコンパイラを検出しない

コンパイラはこの環境では提供されていません。おそらく、あなたはJDKではなくJREで を実行していますか?

これは私の現在のスクリプトです:

node { 

    stage ('clone') { 
     git credentialsId: 'git', url: '<URL to GIT repo>' 
    } 

    stage ('build and deploy') { 
     env.JAVA_HOME="${tool 'JDK8'}" 
     env.PATH="${env.JAVA_HOME}/bin:${env.PATH}" 

     def server = Artifactory.server "arti-test" 
     def buildInfo = Artifactory.newBuildInfo() 
     buildInfo.env.capture = true 
     def rtMaven = Artifactory.newMavenBuild() 
     rtMaven.tool = 'M3' 
     rtMaven.resolver server: server, releaseRepo: 'libs-release', snapshotRepo: 'libs-snapshot' 
     rtMaven.deployer server: server, releaseRepo: 'libs-release-local', snapshotRepo: 'libs-snapshot-local' 

     rtMaven.run pom: 'pom.xml', goals: 'clean install', buildInfo: buildInfo 

     buildInfo.retention maxBuilds: 10, maxDays: 7, deleteBuildArtifacts: true 
     server.publishBuildInfo buildInfo 
    } 

} 

答えて

2

ジェンキンスArtifactoryプラグインの次のリリースはMavenとGradleのパイプラインのビルドに使用するJDKを設定するためのAPIが含まれます。このタスクを追跡するこの問題を参照してください。 https://www.jfrog.com/jira/browse/HAP-848 一時的な回避策として、JDK/binディレクトリをJenkinsビルドエージェントのPATH環境変数に追加できます。エージェントマシンに直接追加する必要があります(Jenkine経由ではありません)。

関連する問題