Jenkins:找不到名为 M3 的工具
Jenkins: no tool named M3 found
在 Jenkins (Jenkins 2.7.2) 中设置管道构建,复制基于 git 构建的示例脚本给出:"no tool named M3 found"。管道脚本中的相关行是:
def mvnHome = tool 'M3'
您需要安装 Maven 才能进行构建。您可以使用 Global Tool Configuration
进行配置并将名称命名为 'M3'
def mvnHome = tool 'M3'
它说 M3 已安装并将 return 值分配给 mvnHome
确保在 hudson.tasks.Maven.xml
中配置了 maven 安装,如下所示,名称为你想要的(我在下面有 MAVEN3
),
cat /var/lib/jenkins/hudson.tasks.Maven.xml
<?xml version='1.0' encoding='UTF-8'?>
<hudson.tasks.Maven_-DescriptorImpl>
<installations>
<hudson.tasks.Maven_-MavenInstallation>
<name>MAVEN3</name>
<home>/usr/share/apache-maven/</home>
<properties/>
</hudson.tasks.Maven_-MavenInstallation>
</installations>
</hudson.tasks.Maven_-DescriptorImpl>
接着jenkins重启
systemctl restart jenkins.service
也可以在UI中验证,
然后,可以在管道脚本中使用相同的变量。
node {
def mvnHome
stage('Preparation') {
git url: 'https://github.com/prayagupd/eccount-rest.git', branch: 'REST-API-load-balancing'
mvnHome = tool 'MAVEN3'
}
stage('Build') {
sh "'${mvnHome}/bin/mvn' -Dmaven.test.failure.ignore clean package"
}
stage('Results') {
junit '**/target/surefire-reports/TEST-*.xml'
archive 'target/*.jar'
}
}
在 Jenkins (Jenkins 2.7.2) 中设置管道构建,复制基于 git 构建的示例脚本给出:"no tool named M3 found"。管道脚本中的相关行是:
def mvnHome = tool 'M3'
您需要安装 Maven 才能进行构建。您可以使用 Global Tool Configuration
进行配置并将名称命名为 'M3'
def mvnHome = tool 'M3'
它说 M3 已安装并将 return 值分配给 mvnHome
确保在 hudson.tasks.Maven.xml
中配置了 maven 安装,如下所示,名称为你想要的(我在下面有 MAVEN3
),
cat /var/lib/jenkins/hudson.tasks.Maven.xml
<?xml version='1.0' encoding='UTF-8'?>
<hudson.tasks.Maven_-DescriptorImpl>
<installations>
<hudson.tasks.Maven_-MavenInstallation>
<name>MAVEN3</name>
<home>/usr/share/apache-maven/</home>
<properties/>
</hudson.tasks.Maven_-MavenInstallation>
</installations>
</hudson.tasks.Maven_-DescriptorImpl>
接着jenkins重启
systemctl restart jenkins.service
也可以在UI中验证,
然后,可以在管道脚本中使用相同的变量。
node {
def mvnHome
stage('Preparation') {
git url: 'https://github.com/prayagupd/eccount-rest.git', branch: 'REST-API-load-balancing'
mvnHome = tool 'MAVEN3'
}
stage('Build') {
sh "'${mvnHome}/bin/mvn' -Dmaven.test.failure.ignore clean package"
}
stage('Results') {
junit '**/target/surefire-reports/TEST-*.xml'
archive 'target/*.jar'
}
}