Ошибка Дженкинса Java 12 OpenJDK - переменная среды JAVA_HOME не определена правильно

Конфигурирование Jenkins (2.121.3) для использования JDK 12 в меню "Глобальная конфигурация инструмента"> "Установки JDK..." с использованием "Загрузить URL для двоичного архива" приводит к следующей ошибке при выполнении сборки:

The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
NB: JAVA_HOME should point to a JDK not a JRE
Build step 'Invoke top-level Maven targets' marked build as failure
Finished: FAILURE

Как я могу решить эту проблему?

2 ответа

Решение

Файл tar содержит каталог с именем jdk-12, поэтому, когда Jenkins его извлекает, указанная папка jdk не является прямым родителем каталога bin.

/var/jenkins_home/tools/hudson.model.JDK/Java12/jdk-12/bin

должно быть

/var/jenkins_home/tools/hudson.model.JDK/Java12/bin

Чтобы это исправить, распакуйте файл tar, перейдите в папку jdk-12, tar czf openjdk-12_linux-x64_bin.tar.gz *загрузите его в доступное для Jenkins место и введите URL-адрес в поле "Загрузить URL-адрес для двоичного архива" в установщике "Глобальная конфигурация инструмента" -> "Установки JDK".

Как утверждает Роберт Бейн , это потому, что в архиве JDK есть подпапка.

Используя более поздние версии Jenkins (в данном случае 2.375.1), вы можете указать эту подпапку в настройке Jenkins в опции «Подкаталог извлеченного архива». Например:

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