Java не распознается при запуске сценария оболочки от Jenkins

Я пытаюсь запустить / вызвать программу Java на подчиненном устройстве Jenkins, используя Jenkins. Я получаю сообщение об ошибке Javac не распознается. Но когда я вызываю ту же программу непосредственно из подчиненного хоста jenkins, java-программа прекрасно работает. Я попытался установить java home, экспортировав $java_home в сам сценарий оболочки, но, похоже, это не помогло. Проверял версии java и все выглядело нормально. Есть мысли / идеи??

2 ответа

Решение

Переменная PATH действующего значения в этом сценарии не имеет Java. Есть много способов ее решить.

Опция 1

Абсолютный путь пользователя к вашей Java. Вы уже определили JAVA_HOME. Так что ссылайтесь на Java как на $JAVA_HOME/bin/java ...

Вариант 2

Вариант выше. Добавьте $ JAVA_HOME / bin в PATH. Как ниже

  export PATH=$JAVA_HOME/bin:$PATH

Вариант 3

Дальнейшее изменение выше. Разрешите Jenkins установить JDK и установить переменную среды, указывающую на установку. Используйте эту переменную среды в вашем скрипте.

Я указал абсолютное значение пути Java в переменных среды в свойствах узла, как показано ниже.

JAVA_HOME

C:\Program Files\Java\jdk-17

И это сработало

Другие вопросы по тегам