Дженкинс, указав JAVA_HOME

Я установил openjdk-6-jdk в свой ящик ubuntu, используя apt-get.

В системной информации jenkins говорит мне, что Java.Home is /usr/lib/jvm/java-6-openjdk/jre

Однако, когда я укажу этот каталог как JAVA_HOME в Jenkins: "configure system", он возвращает сообщение об ошибке, говорящее, что каталог не похож на каталог jdk.

он также не может забрать мою установку maven.

Я пропустил что-то очевидное?

Ответы

Ответ 1

Ваша переменная JAVA_HOME должна быть установлена в /usr/lib/jvm/java-6-openjdk, и она должна быть доступна для пользователя, запускающего Jenkins.

Из комментария Кайла Стрэнда:

По состоянию на апрель 2015 года (я думаю), Дженкинс требует Java7. Также обратите внимание, что двоичный путь Java (JAVA) должен быть установлен на правильную версию, если системное значение по умолчанию все еще Java 6. Наконец, для всех, кто интересуется, где установлены эти переменные, он находится в файле конфигурации, указанном с инструкциями по установке на Jenkins. веб-страница (например, для Debian это /etc/default/jenkins).

Ответ 2

В системах CentOS 6.x и Redhat 6.x пакет openjdk-devel содержит jdk. Это достаточно разумно, если вы знакомы с шаблоном -devel, используемым в RedHat, но запутанным, если вы ищете пакет jdk, который соответствует стандартам именования java.

Ответ 3

Используя Jenkins 2 (2.3.2 в моем случае), правильный путь, кажется, вставляет следующее в ваш файл конвейера:

env.JAVA_HOME="${tool 'jdk1.8.0_111'}"
env.PATH="${env.JAVA_HOME}/bin:${env.PATH}"

"jdk1.8.0_111", являющийся именем конфигурации java, первоначально зарегистрированной в Jenkins

Ответ 4

openjdk-6 - это среда выполнения Java, а не JDK (например, набор разработчика, содержащий javac). Установите openjdk-6-jdk.

Maven также нуждается в JDK.

[EDIT]. Когда JDK установлен, используйте /usr/lib/jvm/java-6-openjdk для JAVA_HOME (т.е. без части jre).

Ответ 5

Если у кого-то есть подобные проблемы, я использовал установки sudo apt-get по умолчанию для соответствующих пакетов, и вот правильные настройки:

JAVA_HOME=/usr/lib/jvm/java-7-openjdk-i386

и

MAVEN_HOME=/usr/share/maven2

Ответ 6

Я просто хотел добавить решение для машин Windows.

  • Windows Server 2008 R2 Standard, SP1
  • Дженкинс 2.89.4
  • Java версия 8.171

Симптом: сервис Jenkins запускается и сразу останавливается.
Jenkins.wrapper.log имеет строку, указывающую неверный путь к Java:

- Запуск C:\Program Files\Java\jre1.8.0_141\bin\java -Xrs -Xmx6g -Dhudson.lifecycle = hudson.lifecycle.WindowsServiceLifecycle -jar "C:\Program Files (x86)\Jenkins\jenkins.war "--httpPort = 8080 --webroot =" C:\Program Files (x86)\Jenkins\war "

Исправление: у Дженкинса путь жестко запрограммирован в jenkins.xml. Измените путь к новому местоположению Java.

Вы также можете использовать переменные среды Windows, но мне это не удалось, и я не думаю, что установщик Java обновит их, поэтому вам все равно придется обновлять их каждый раз вручную.

Ответ 7

В Jenkins попробуйте установить JAVA_HOME на /usr/lib/jvm/java-6-openjdk

Ответ 8

Обновление с Ubuntu 10.0.4 до 12.0.4 произошло с ошибкой. У нас была настроена установка JDK (автоконфигурирована?), Указывающая на /usr/lib/jvm/java -6-openjdk это больше не содержало JDK, Переход на /usr/lib/jvm/default -java исправлен и должен сделать для плавного обновления java-7.

Итак, в ответ на вопрос: не указывайте JAVA_HOME на Ubuntu.

Ответ 9

В Ubuntu 12.04 мне пришлось установить OpenJDK-7-JDK

тогда работал javac!

то я мог бы использовать

/usr/lib/jvm/java-7-openjdk-amd64

как путь, и дженкинсы больше не жаловались.

Ответ 10

Загрузите пакет rpm пакета из http://pkg.jenkins-ci.org/redhat/ вы можете указать дополнительное java-расположение, например, я использовал java 1.7 по умолчанию в моей системе, но я использую /opt/jdk 1.8.0_60/bin/java для дженкинсов. Откройте jenkins startup script/etc/init.d/jenkins и добавьте дополнительную java здесь, я делаю, что я добавил /opt/jdk 1.8.0_60/bin/java,

Поиск применимой Java как /usr/bin/java может не указывать на минимальную версию, требуемую Дженкинсом.

См. http://www.nabble.com/guinea-pigs-wanted-----Hudson-RPM-for-RedHat-Linux-td25673707.html

= кандидатов" /opt/jdk 1.8.0_60/bin/java

Ответ 11

Это старый поток, но для более поздних версий Jenkins (в моем случае Jenkins 2.135), которые требуют определенного java JDK, должно помочь следующее:

Примечание: это для Centos 7, другие дистрибутивы могут иметь разные местоположения каталогов, хотя я считаю, что они подходят и для Ubuntu.

Измените /etc/sysconfig/jenkins и установите переменную JENKINS_JAVA_CMD="/<your desired jvm>/bin/java" (требуется доступ с правами root)

Пример:

JENKINS_JAVA_CMD="/usr/lib/jvm/java-1.8.0-openjdk/bin/java"

Перезапустите Jenkins (если jenkins запускается как служба sudo service jenkins stop затем sudo service jenkins start)

Выше было исправлено, что моя установка Jenkins не запускалась после обновления до Java 10 и Jenkins до 2.135

Ответ 12

Для тех из вас, кто приходит к этой проблеме и имеет доступ к настройке агентов Jenkins, вы можете установить JAVA_HOME из Jenkins> Узлы> "имя агента"> Страница настройки:

Установка переменных для каждого агента

Ответ 13

я увидел Eclipse > Настройки > Установленные JRE > Определение JRE я нашел каталог java_home так что /Library/Java/JavaVirtualMachines/jdk 1.7.0_17.jdk/Contents/Home