我正在将Jenkins 2.345作为码头中的容器运行。主机操作系统是ubuntu20.04LTS。现在,我想编译一个需要Java 17的maven项目,为此,我已经在Jenkins中安装了JDK 17作为工具。现在,为了验证新的JDK是否正常工作,我运行了以下管道。
管道脚本
pipeline
{
agent any
tools
{
jdk 'openjdk-17.0.5'
maven 'maven'
}
stages {
stage('Example') {
steps {
sh '''
env | grep -e PATH -e JAVA_HOME
which java
java -version
mvn -v
'''
}
}
}
}在构建管道之后,我得到了以下输出日志。
+ grep -e PATH -e JAVA_HOME
+ env
LD_LIBRARY_PATH=/opt/java/openjdk/lib/server:/opt/java/openjdk/lib:/opt/java/openjdk/../lib
PATH=/var/jenkins_home/tools/hudson.model.JDK/openjdk-17.0.5/openjdk-17.0.5/bin:/var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/maven/bin:/var/jenkins_home/tools/hudson.model.JDK/openjdk-17.0.5/openjdk-17.0.5/bin:/var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/maven/bin:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
JAVA_HOME=/var/jenkins_home/tools/hudson.model.JDK/openjdk-17.0.5/openjdk-17.0.5
+ which java
/opt/java/openjdk/bin/java
+ java -version
openjdk version "11.0.15" 2022-04-19
OpenJDK Runtime Environment Temurin-11.0.15+10 (build 11.0.15+10)
OpenJDK 64-Bit Server VM Temurin-11.0.15+10 (build 11.0.15+10, mixed mode)
+ mvn -v
The JAVA_HOME environment variable is not defined correctly,
this environment variable is needed to run this program.因此,即使更新了/opt/java/openjdk/bin中的、JAVA_HOME、值,但Jenkins仍然只能标识java,这是默认设置。
那么,有谁能确定Jenkins有什么问题,以及为什么会出现这个问题呢?
发布于 2022-11-09 15:42:07
只需在docker中配置jenkins代理,并使用包含java 17的任何坞映像作为代理。如何制作--请看这里,https://www.youtube.com/watch?v=ymI02j-hqpU
https://stackoverflow.com/questions/74322255
复制相似问题