Pipeline执行构建的时候报错

来源:6-3 Jenkins集成Artifactory

杰神

2020-12-02

错误内容

Jenkins Artifactory Plugin version: 3.10.0 
ERROR: Couldn't find Maven executable.

环境

  • Pipeline脚本
node {

    stage('Pull source code') {
       git  credentialsId: 'git-1024web-cn-rowger', url: 'http://git.1024web.cn:3000/gameokr/gameokr_server.git'

    }
    dir('gameokr_server') {
        //Maven 构建,制品上传到 Artifactory
        stage('Maven build'){
            def server = Artifactory.newServer url: "http://8.129.40.3:8082/artifactory", credentialsId: 'art-oss-cred'
            def rtMaven = Artifactory.newMavenBuild()

            rtMaven.tool = 'maven' // Tool name from Jenkins configuration
            rtMaven.deployer releaseRepo: 'maven-libs-release-local', snapshotRepo: 'libs-snapshot-local', server: server

            //收集构建信息
            def buildInfo = Artifactory.newBuildInfo()
            // server.publishBuildInfo buildInfo
            rtMaven.run pom: 'pom.xml', goals: 'deploy -Dmaven.test.skip=true', buildInfo: buildInfo

            server.publishBuildInfo buildInfo
        }

    }

 }
  • Artifactory和Jenkins都是docker pull拉取的最新版,Jenkins里面Artifactory插件版本为 3.10.
  • 测试本地可以正常mvn deploy到远程Artifactory仓库,在Jenkins中配置Artifactory链接,Test connect返回成功。
写回答

4回答

杰神

提问者

2020-12-02

看到老师在readme.md文件里面有一句

在 Jenkins 里需要设定 maven 的执行路径,并且制定名称,例如第六章流水线脚本里引用的 maven 名字如下:rtMaven.tool = 'maven' // 名字与Jenkins configuration里的 maven 名称保持一致

想问问这个要怎样设置,我好像没有看到老师的设置

1
1
杰神
这一步已经操作完成了
2020-12-03
共1条回复

杰神

提问者

2020-12-02

关于Jenkins构建maven我有一个疑问。在Jenkins容器中,使用git clone项目到容器内部,在容器内部执行mvn命令。这个容器里面应该包含了maven环境吧?我使用docker exec进容器内部没有发现mmaven环境。或者这个maven环境不是安装在docker里面的,而是docker所在的主机上?没有听说过docker容器内部调用容器所在主机节点的环境这个说法

0
1
杰神
容器部署Jenkins,在系统管理-》全局工具配置里面可以手动点击安装对应版本的java和maven环境,然后修改setting配置文件就可以了
2020-12-03
共1条回复

杰神

提问者

2020-12-02

具体的运行日志截图:

//img.mukewang.com/szimg/5fc75c520967ec9515350761.jpg

0
3
清风
回复
杰神
错误提示是在 Jenkins 的工作空间里找不到 maven 的可执行文件。你在 Jenkins 里配置了 maven 的路径吗?
2020-12-03
共3条回复

杰神

提问者

2020-12-02

我是不是需要参考老师的Jenkins和Artifactory重新安装指定版本啊

0
1
杰神
测试将deploy改成 install也一样报错
2020-12-02
共1条回复

SpringCloud+Kubernetes 微服务容器化交付实战

学习业界领先的持续交付方案

636 学习 · 104 问题

查看课程