Ошибка Дженкинса 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 в опции «Подкаталог извлеченного архива». Например: