JAVA_HOME在节点上给了我错误的值

JAVA_HOME在节点上给了我错误的值,java,jenkins,Java,Jenkins,Jenkins节点的JavaPath配置如下: /usr/java/jdk1.8.0\u 131/bin/java 我写了一份简单的Jenkins作业,将JAVA_打印回家: #/bin/ksh echo“JAVA_HOME=${JAVA_HOME}” echo$PATH 出于某种原因,我得到的结果是: JAVA\u HOME=/usr/JAVA/jdk1.8.0\u 31 为什么不使用用于加载节点的值?我在节点上没有这样的Java引用。 顺便说一句,它是Jenkins容器,而不是VM可以在Ma

Jenkins节点的JavaPath配置如下:

/usr/java/jdk1.8.0\u 131/bin/java

我写了一份简单的Jenkins作业,将JAVA_打印回家:

#/bin/ksh
echo“JAVA_HOME=${JAVA_HOME}”
echo$PATH
出于某种原因,我得到的结果是:

JAVA\u HOME=/usr/JAVA/jdk1.8.0\u 31
为什么不使用用于加载节点的值?我在节点上没有这样的Java引用。
顺便说一句,它是Jenkins容器,而不是VM

可以在
Manage Jenkins->Global Tool Configuration->JDK
下配置
JAVA\u HOME
。如果提供多个,则需要指定生成执行将使用的Java版本

您还可以使用系统上现有的Java

例如,我们有这个管道脚本来识别和打印定义的工具<代码>工具名称是在
全局工具配置
中定义的JDK的
名称

def jdktool = tool name: 'JDK-1.8.0', type: 'hudson.model.JDK'
env.JAVA_HOME = "${jdktool}"

JAVA\u HOME
指向包含
bin/JAVA
的目录。这似乎是正确的。但是这个节点上没有Java1.8.031。那么Jenkins从何处获取这个值呢?哦,我明白了,我没有注意到版本号的差异。在
Mange Jenkins->Global Tool Configuration->JDK
下是否配置了
JAVA\u HOME
?您可能需要单击
JDK installations
才能看到那里配置了什么。是的,您是对的,JDK.1.8.031的值在那里。当我把它改成131时,它会打印那个版本。这意味着我应该在这里提到我在所有Jenkins节点中使用的所有Java版本?对于节点使用的不同版本,它如何知道打印哪个
JAVA\u HOME
?根据节点的JavaPath中定义了什么?