Jenkins, especificando JAVA_HOME

Instalé openjdk-6-jdk en mi caja de ubuntu usando apt-get.

En información del sistema, jenkins me dice que Java.Home es /usr/lib/jvm/java-6-openjdk/jre

Sin embargo, cuando especifico ese directorio como JAVA_HOME en Jenkins: “configurar sistema”, devuelve un mensaje de error que dice que el directorio no parece un directorio jdk.

También está fallando al recoger mi instalación de Maven.

¿Me estoy perdiendo algo obvio?

Su variable JAVA_HOME debe configurarse en / usr / lib / jvm / java-6-openjdk y debe estar disponible para el usuario que inicia Jenkins.

Del comentario de Kyle Strand:

A partir de abril de 2015 (creo), Jenkins requiere Java7. También tenga en cuenta que la ruta binaria de Java (JAVA) debe establecerse en la versión correcta si el valor predeterminado del sistema sigue siendo Java 6. Finalmente, para cualquiera que se pregunte dónde están configuradas estas variables, se encuentra en un archivo de configuración listado con las instrucciones de instalación en el Jenkins. página web (por ejemplo, para Debian es / etc / default / jenkins).

En los sistemas CentOS 6.xy Redhat 6.x, el paquete openjdk-devel contiene el jdk. Es lo suficientemente sensato si está familiarizado con el patrón -devel utilizado en RedHat, pero confuso si está buscando un paquete jdk que cumpla con los estándares de nombres de java.

Usando Jenkins 2 (2.3.2 en mi caso), la forma correcta parece insertar lo siguiente en su archivo de canalización:

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

“jdk1.8.0_111” siendo el nombre de la configuración java inicialmente registrada en Jenkins

openjdk-6 es un tiempo de ejecución de Java, no un JDK (kit de desarrollo que contiene javac , por ejemplo). Instale openjdk-6-jdk .

Maven también necesita el JDK.

[EDITAR] Cuando el JDK está instalado, use /usr/lib/jvm/java-6-openjdk para JAVA_HOME (es decir, sin la parte jre ).

En caso de que alguien tenga problemas similares, usé el sudo apt-get installs predeterminado para los paquetes relevantes y aquí están las configuraciones correctas:

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

y

 MAVEN_HOME=/usr/share/maven2 

Solo quería agregar una solución para las máquinas de Windows.

  • Windows Server 2008 R2 Standard, SP1
  • Jenkins 2.89.4
  • Java versión 8.171

Síntoma: el servicio de Jenkins comienza y se detiene de inmediato.
Jenkins.wrapper.log tiene una línea que indica la ruta incorrecta a Java:

– Iniciar C: \ Archivos de progtwig \ Java \ jre1.8.0_141 \ bin \ java -Xrs -Xmx6g -Dhudson.lifecycle = hudson.lifecycle.WindowsServiceLifecycle -jar “C: \ Archivos de progtwig (x86) \ Jenkins \ jenkins.war” –httpPort = 8080 –webroot = “C: \ Archivos de progtwig (x86) \ Jenkins \ war”

La solución: Jenkins tiene la ruta codificada de forma jenkins.xml en jenkins.xml . Cambia la ruta a la nueva ubicación de Java.

También puedes usar las variables de entorno de Windows, pero no tuve éxito con eso y no creo que el instalador de Java las actualice, por lo que deberías actualizarlas manualmente cada vez que quieras.

En Jenkins, intente configurar JAVA_HOME en /usr/lib/jvm/java-6-openjdk

Al actualizar de Ubuntu 10.0.4 a 12.0.4, nos equivocamos. Teníamos una instalación de JDK configurada (¿configurada automáticamente?) Que apunta a / usr / lib / jvm / java-6-openjdk, esto ya no contenía un JDK, cambiando a / usr / lib / jvm / default-java arreglado, y debería hacer para una actualización java-7 perfecta.

Así que en respuesta a la pregunta: no especifique JAVA_HOME en Ubuntu.

En Ubuntu 12.04 tuve que instalar openjdk-7-jdk

entonces javac estaba trabajando!

entonces podría usar

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

como camino y Jenkins ya no se quejaba.

Descargue el paquete rpm del paquete desde http://pkg.jenkins-ci.org/redhat/ puede dar una ubicación java adicional como tengo 1.7 java predeterminado en mi sistema pero estoy usando /opt/jdk1.8.0_60/bin/java para Jenkins. Abra el script de inicio de jenkins /etc/init.d/jenkins y agregue java adicional aquí, en caso de que haya agregado /opt/jdk1.8.0_60/bin/java,

La búsqueda de Java utilizable como / usr / bin / java puede no apuntar a la versión mínima requerida por Jenkins.

Consulte http://www.nabble.com/guinea-pigs-wanted—–Hudson-RPM-for-RedHat-Linux-td25673707.html

candidatos = “/opt/jdk1.8.0_60/bin/java

Este es un hilo antiguo, pero para las versiones más recientes de Jenkins (en mi caso Jenkins 2.135) que requieren un JDK de Java en particular, lo siguiente debería ayudar:

Nota: Esto es para Centos 7, otras distribuciones pueden tener ubicaciones de directorio diferentes, aunque creo que también son correctas para Ubuntu.

Modifique /etc/sysconfig/jenkins y configure la variable JENKINS_JAVA_CMD="//bin/java" (se requiere acceso a la raíz)

Ejemplo:

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

Reinicie Jenkins (si jenkins se ejecuta como un servicio sudo service jenkins stop entonces sudo service jenkins start )

Lo anterior solucionó que mi instalación de Jenkins no se iniciara después de actualizar a Java 10 y de Jenkins a 2.135

java jenkins java-home ubuntu centos

Vi en Eclipse> Preferencias> JRE instalados> JRE Definición Encontré el directorio de java_home por lo que es /Library/Java/JavaVirtualMachines/jdk1.7.0_17.jdk/Contents/Home