在詹金斯管道上找不到mvn命令

时间:2020-06-11 19:05:23

标签: maven jenkins jenkins-pipeline

我对詹金斯(Jenkins)和maven项目真的很陌生,即使使用https://github.com/jglick/simple-maven-project-with-tests.git的简单示例项目,也开始让我发疯。

还使用Jenkins的Pipeline示例脚本GitHub + Maven

stages {
      stage('Build') {
         steps {
            // Get some code from a GitHub repository
            git 'https://github.com/jglick/simple-maven-project-with-tests.git'

            // Run Maven on a Unix agent.
            sh "mvn -Dmaven.test.failure.ignore=true clean package"

但是我遇到下一个错误:

+ mvn -version
/var/lib/jenkins/workspace/app-maven@tmp/durable-dba02bb4/script.sh: line 1: mvn: command not found

我找到了一篇文章,说要使用此方法将mvn路径保存在变量上并使用它:

steps {
    // Get some code from a GitHub repository
    git 'https://github.com/alvarosjf/maven-app.git'

    // Run Maven on a Unix agent.
    def mvnHome = tool name: '3.6.3', type: 'maven'
    sh "${mvnHome}/bin/mvn -version"
    //sh 'mvn -version'

但这甚至更糟,在启动时显示错误

org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
WorkflowScript: 5: Not a valid stage section definition: "def mvnHome = tool name: '3.6.3', type: 'maven'". Some extra configuration is required. @ line 5, column 7.
         stage('Build') {
         ^

1 error

有没有办法尝试在Github webhooks + maven中使用简单的jenkins管道?

1 个答案:

答案 0 :(得分:1)

您的管道代码似乎是正确的,但是您需要在Jenkins本身中配置二手工具(在脚本中,版本3.6.3中的maven)。

这可以通过以下方式完成:

“管理Jenkins->配置工具”,在maven部分中,添加一个新实例(选择所需名称,在管道脚本tool name: 'your-name' type: 'maven'中也使用此名称),其余部分保持原样,即将通过从apache服务器下载自动安装maven