14

我有一个具有JAVA_HOME环境变量的 Jenkins Slave(一台 Windows PC)。我更新了 Slave 上的 Java 版本,所以我也更新了环境变量。

当我通过 Jenkins Web 界面查看这个 Slave 的系统属性时,该JAVA_HOME属性被报告为旧的。

在 Windows PC 上运行echo %PATH%显示正确的值。println System.getenv("PATH")在从站的 Jenkins 节点脚本控制台上运行会显示旧的 JAVA_HOME 值。

我试图再次删除和添加从站并重新启动 Jenkins 服务器。仍然没有更新旧值。

有什么想法吗?

4

5 回答 5

11

这是 Jenkins 中的一个错误:https ://issues.jenkins-ci.org/browse/JENKINS-27739

3种解决方法(我都亲自确认过):

  1. 将 Jenkins 更新为 >=1.617(推荐)
  2. 重启詹金斯大师
  3. 删除 Jenkins slave,然后重新添加
于 2015-05-29T00:34:42.040 回答
9

Hudson/Jenkins 不使用从属环境变量,因为它支持多个 java 版本,因此您可以在 GUI 中配置 java home 环境变量。

您需要做的是转到 Manage Hudson/Jenkins,然后选择 Manage Nodes。从列表中选择要配置的节点,然后选择配置。在底部有一个节点属性部分。选中工具位置复选框。单击添加,然后在下拉列表中选择您的 JDK 并将新路径添加到它。

于 2011-12-16T11:36:43.313 回答
2

重新启动从站,这解决了我的配置问题。

于 2015-02-04T13:48:42.860 回答
1

你可以更新你的 Jenkins 版本,它会解决它。否则这对我有用(Jenkins 1.6,构建/测试节点:MacOSX Mojave):

首先使用以下命令在您的构建/测试节点中安装 java 8 :

brew update
brew cask install caskroom/versions/java8

然后在 Jenkins Web 面板中单击您的构建/测试节点,然后单击配置,然后单击高级...按钮,这将显示多个文本字段。然后在 JavaPath 字段中添加 java 8 的路径。

在此处输入图像描述

对我来说,这条路就像:

/Library/Java/JavaVirtualMachines/jdk1.8.X_XXX.jdk/Contents/Home/bin/java

注意:记得X_XXX用你之前的 java 8 版本替换。

然后保存

之后断开构建/测试节点并再次连接。这应该可以解决问题。

来源

于 2019-02-27T20:13:30.037 回答
0

无需重新启动。

管理 Jenkins -> 管理节点和云单击所需的从站。然后从面板中选择“断开连接”。

从站将自动重新连接。如果没有,请单击“启动”。

这将刷新环境变量,包括“PATH”。

于 2021-12-01T10:02:16.223 回答