Jenkins奴隶环境变量刷新

C0d*_*ack 14 hudson environment-variables java-home jenkins

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

当我通过Jenkins web界面查看此Slave的系统属性时,该JAVA_HOME属性被报告为旧属性.

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

我试图删除并再次添加Slave并重新启动Jenkins服务器.旧的价值仍未更新.

有什么想法吗?

kmi*_*les 10

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

解决3种方法(我亲自确认了每种方法):

  1. 将Jenkins更新为> = 1.617(推荐)
  2. 重启詹金斯大师
  3. 删除Jenkins slave,然后重新添加它

  • 您不需要完全删除从站!只需重新启动从代理就足够了。 (2认同)

Rob*_*son 9

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

你需要做的是去管理Hudson/Jenkins,然后选择Manage Nodes.从列表中选择要配置的节点,然后选择"配置".在底部有一个Node Properties部分.选中工具位置复选框.单击Add,然后在下拉列表中选择您的JDK并添加新路径.

  • 这个问题仍然没有答案.我需要我的奴隶以某种方式"动态"更新PATH变量. (8认同)