2011-12-15 5 views
13

У меня есть подчиненный Jenkins (ПК с ОС Windows), который имеет переменную окружения JAVA_HOME. Я обновил версию Java на Slave, поэтому я также обновил переменную среды.Jenkins Slave Environment Variable Refresh

Когда я смотрю на системные свойства этого ведомого через веб-интерфейс Jenkins, свойство JAVA_HOME сообщается как старое.

Запуск echo %PATH% на ПК с ОС Windows показывает правильные значения. Запуск println System.getenv("PATH") на консоли сценария Jenkins Node для Slave показывает старое значение JAVA_HOME.

Я попытался удалить и снова добавить Slave и перезапустить сервер Jenkins. Тем не менее старое значение не обновляется.

Любые мысли?

ответ

7

Hudson/Jenkins не использует переменные подчиненной среды, так как поддерживает несколько версий Java, поэтому вы настраиваете переменные домашней среды java в графическом интерфейсе.

Что вам нужно сделать, это пойти в Manage Hudson/Jenkins, а затем выбрать Manage Nodes. Выберите узел, который вы хотите настроить из списка, а затем выберите «Настроить». Внизу находится раздел «Свойства узла». Установите флажок «Местоположения инструментов». Нажмите «Добавить», затем выберите свой JDK в раскрывающемся списке и добавьте к нему новый путь.

+0

Добавление пути к узлу, а не к рабочему окружению спасибо. – C0deAttack

+7

Вопрос остается без ответа. Мне нужно, чтобы мой подчиненный каким-то образом обновил переменную PATH «на лету». –

+0

Также интересуется некоторыми решениями, не связанными с взломом ... –

1

Перезапустите рабочую станцию, это устраняет проблему в моей конфигурации.

8

Это ошибка в Дженкинс: https://issues.jenkins-ci.org/browse/JENKINS-27739

3 пути решения (я лично подтвердил каждый):

  1. Update Дженкинс к> = 1,617 (рекомендуется)
  2. Restart Дженкинс мастер
  3. Удалить Jenkins slave, затем повторно добавить его
+1

спасибо за указание на отчет об ошибке. Обновление до> = 1.617 исправляет это – pHiL

+1

, это сработало для меня, спасибо :) – anand

+0

Не существует способа добавить/обновить переменные ENV в конфигурации подчиненного с помощью Jenkins Rest/API? –

Смежные вопросы