当前位置: 首页 > 知识库问答 >
问题:

詹金斯蓝海:Maven看不到Java

邹祺然
2023-03-14

我收到错误“/var/jenkins_home/tools/hudson.model.jdk/jdk8/bin/java:not found:”,即使路径存在:

   

[edi-debatcher_master-LNI22Y2C5V3VECCBCFPVB3ZUWJJNMLK6LIFEQ6V3OYH52T74NU3A@2] Running shell script
+ echo PATH = /var/jenkins_home/tools/hudson.model.JDK/jdk8/bin:/var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/Maven_3.5.3/bin:/var/jenkins_home/tools/hudson.model.JDK/jdk8/bin:/var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/Maven_3.5.3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/jvm/java-1.8-openjdk/jre/bin:/usr/lib/jvm/java-1.8-openjdk/bin
PATH = /var/jenkins_home/tools/hudson.model.JDK/jdk8/bin:/var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/Maven_3.5.3/bin:/var/jenkins_home/tools/hudson.model.JDK/jdk8/bin:/var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/Maven_3.5.3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/jvm/java-1.8-openjdk/jre/bin:/usr/lib/jvm/java-1.8-openjdk/bin
+ echo M2_HOME = /var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/Maven_3.5.3
M2_HOME = /var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/Maven_3.5.3
+ mvn -version
/var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/Maven_3.5.3/bin/mvn: exec: line 199: /var/jenkins_home/tools/hudson.model.JDK/jdk8/bin/java: not found

我正在使用Jenkins Blue Ocean特性GitHub JenkinsFile。我在全局工具配置中定义了“JDK8”和“Maven 3.5.3”,选中了“autoinstall”。

这是我的JenkinsFile:


    pipeline {
      agent any
      stages {
        stage('Initialize') {
          steps {
            sh '''
               echo "PATH = ${PATH}"
               echo "M2_HOME = ${M2_HOME}"
               mvn --version 
               '''
          }
        }
        stage('Build') {
          steps {
            sh 'mvn -Dmaven.test.failure.ignore=true install'
          }
          post {
            success {
              junit 'target/surefire-reports/**/*.xml'
            }
          }
        }
      }
      tools {
        maven 'Maven 3.5.3'
        jdk 'jdk8'
      }
      post {
        always {
        deleteDir()
        }
      }
    }

共有1个答案

袁赞
2023-03-14

您正在为系统运行一个错误版本的文件(这里是java)。

问题:文件在那里,无法执行。错误消息是“没有这样的文件或目录”

解决方案:您正在为您的系统运行错误的文件版本。

例如,如果您在带有Alpine Linux的Docker容器中运行Jenkins安装,就会出现问题,因为Alpine使用musl libc。Oracle Java二进制文件只在glibc上运行。

 类似资料:
  • 问题内容: 詹金斯版 1.538 使用Maven 3.1.0可以正常工作 使用Maven 3.2.1时,出现以下错误 Jenkins本身安装了Maven 3.2.1(从Apache下载并解压缩) 怎么了? 问题答案: JENKINS-22486已通过Maven插件 2.8 修复。

  • 我将如何将Jenkins上的awseb部署插件集成到Jenkins蓝色海洋上的声明性管道中?我正在寻找一个管道步骤的例子。

  • 问题内容: 尝试粘贴到我安装了Java JDK的位置,但是Jenkins一直说: 还尝试并得到: 任何人最后一个文件夹/文件应该是什么?我假设bin \ java,但这给我带来麻烦。 问题答案: 应该指向

  • 问题内容: 尝试在Jenkins中执行构建时出现以下错误: 当我打开普通的命令提示符并运行相同的命令(asc-tree -v cs1)时,它可以正常工作。 我在这里查看了一下,并尝试在我的环境变量中使用UNC表示法,而不是“ Z:\”,但这给了我与计算机名称而不是驱动器相同的错误。 我还尝试过更改服务以使用我的帐户“登录”详细信息而不是“本地系统帐户”,但这似乎没有实现。 有人有什么想法吗? 问题

  • 有没有可能让詹金斯使用真正的浏览器而不是无头浏览器?我正在运行一些用TestNG编写的测试(使用Selenium webdriver)。当我运行testng时。在Eclipse中,浏览器启动并运行测试。但当我使用Jenkins并用maven运行测试时,它不会启动任何浏览器。

  • 本地maven运行良好。然而,詹金斯未能发射它。我注意到下面的反斜杠,但不确定它来自哪里: $java-cp C:\windows\system32\config\systemprofile.jenkins\plugins\maven-plugin\WEB-INF\lib\maven31-agent-1.5.jar;C:\tes\apache-maven-3.2.5-bin\apache-mave