Technical Anshu
Tutorials Blog
☕ Corrección de la versión de Java

Jira JAVA HOME no está configurado o la versión JDK es incorrecta. Solucione el problema de Java detrás del error de inicio.

Jira es un programa Java con una interfaz web. Cuando el Java subyacente cambia o desaparece, Jira falla más rápido de lo que puede escribir un registro, y esa velocidad es la pista.

✍️ Technical Anshu🪟 Windows Server⏱️ 8 minute read
🎥 Mira la solución completa en el vídeo: cada paso se muestra en vivo en la pantalla

Algunas fallas de inicio de Jira producen registros largos. Los fallos de Java no producen casi nada, porque si Java no puede iniciarse, Jira no puede ejecutarse y no puede iniciar sesión. La historia habitual: alguien actualizó el JDK, una limpieza de Windows eliminó un Java antiguo o JAVA_HOME se cambió para otra aplicación, y el servicio de Jira ahora apunta a un Java que falta, de 32 bits donde debería ser de 64 bits, o simplemente una versión que su versión de Jira no admite. Esta página muestra cómo encontrar qué Java Jira está usando realmente y configurarlo correctamente.

Command Prompt - checking the Java Jira will actually use (illustration)
java -version java version "1.8.0_202" (the PATH Java - not always Jira's Java) setenv.bat says: JAVA_HOME=C:\Java\jdk-21 Problem: this Jira version does not support Java 21.
La versión en su PATH y la versión que usa Jira pueden ser dos cosas diferentes. Valores de ejemplo mostrados a modo de ilustración.
1

Comprenda cómo Jira elige su Java

Jira no utiliza simplemente cualquier Java que prefiera Windows. Sus scripts de inicio miran primero JAVA_HOME, luego JRE_HOME, y el servicio de Windows utiliza el Java registrado en su propia configuración. Es por eso que "Jira está instalado" y "Jira todavía falla" son ciertos al mismo tiempo: hablan de diferentes instalaciones de Java.

  1. Abra la carpeta Jira bin dentro del directorio de instalación y busque setenv.bat
  2. Busque líneas que establezcan JAVA_HOME o JRE_HOME; tenga en cuenta la carpeta exacta a la que nombran
  3. Abra esa carpeta y confirme que realmente existe una carpeta bin con java.exe dentro de ella.
  4. Ejecute esa copia directamente: java -version desde dentro de su carpeta bin y escriba la versión.
  5. Si la carpeta nombrada no existe, ha encontrado la falla: Jira apunta a un Java que se movió o eliminó
2

Haga coincidir el JDK con su versión exacta de Jira

Este es el paso que la gente adivina, y adivinar es caro. Cada versión de Jira admite un conjunto específico de versiones de Java: las versiones anteriores de Jira se ejecutan en Java 8 u 11, las más nuevas requieren Java 11 o 17 y las más nuevas requieren Java 17 o posterior. Un Java que es demasiado nuevo falla tanto como uno que es demasiado antiguo: los cambios en el archivo de clase y el módulo son reales, no complicados.

  1. Encuentre su versión de Jira: está en el pie de página de cualquier página de Jira, en el archivo de versión de instalación o en su último atlassian-jira.log de trabajo.
  2. Abra la página Plataformas compatibles de Atlassian para obtener esa versión exacta de Jira y lea sus requisitos de Java.
  3. Compárala con la versión que verificaste en la sección anterior; deben superponerse.
  4. Si no es así, la solución honesta es apuntar a Jira a un JDK compatible (instalar uno lado a lado si es necesario), no forzar el actual.
  5. Evite Java de 32 bits por completo: Jira necesita una JVM de 64 bits para usar un montón útil
3

Reparar JAVA_HOME y la configuración del servicio

Una vez que conozca el JDK correcto, haga que todos los punteros coincidan. Cambiar solo la variable de entorno del sistema es la clásica solución a medias: el servicio puede seguir usando Java almacenado en su propia configuración de contenedor y la falla sobrevive a la reparación.

  1. Detener el servicio Jira
  2. Edite setenv.bat para que JAVA_HOME nombre la carpeta JDK compatible; sin bin final, solo la raíz del JDK
  3. Verifique también las variables de entorno del sistema de Windows, en caso de que se establezca un JAVA_HOME en conflicto allí
  4. Si su Jira se ejecuta como un servicio, abra la configuración de Java del servicio usando la herramienta de configuración del servicio Tomcat en la carpeta Jira bin y confirme que la ruta de Java allí coincida.
  5. Inicie el servicio y observe el registro de catalina: un Java correcto muestra a Jira pasando a las etapas del puerto y la base de datos.
4

Reconocer las firmas de una falla de Java

Los problemas de Java tienen indicios. El servicio falla en segundos. El Visor de eventos de Windows muestra el error del servicio o de la JVM incluso antes de que comiencen los propios registros de Jira. Y cuando existen registros, frases como UnsupportedClassVersionError (Java demasiado antiguo para el código) o errores de acceso al módulo (Java demasiado nuevo y estricto) nombran la falta de coincidencia directamente. Sin embargo, el mensaje "No se pudo crear la máquina virtual Java" suele ser la configuración de la memoria, no la versión; eso pertenece a la corrección del montón, no a esta.

  1. Verifique la velocidad de falla: segundos significa Java o montón; minutos significa etapas posteriores
  2. Verifique el registro de la aplicación del Visor de eventos para detectar errores de JVM en el momento de la falla
  3. Busque en el registro de catalina errores UnsupportedClassVersionError o java.lang cerca de la parte superior de la falla
🔴 Cambie una cosa a la vez. Las reparaciones de Java tientan a las personas a actualizar Jira, Java y el controlador de la base de datos en una tarde. Si el sistema funciona, nunca sabrá qué cambio importó y, si falla, tendrá tres sospechosos en lugar de uno. Repare el puntero de Java, inicie Jira, confirme y solo entonces planifique cualquier actualización, realizando primero una copia de seguridad del directorio de inicio y la base de datos de Jira.

🎥 Vea la solución completa en el vídeo

La reparación completa de inicio de Jira, paso a paso, con las pantallas exactas y las líneas de registro mostradas en vivo.

▶️ Watch Full Video
❓ Preguntas comunes (FAQ)

Java está instalado y funciona bien para otras aplicaciones. ¿Por qué Jira sigue fallando?

Porque Jira probablemente no esté usando ese Java. Jira sigue JAVA_HOME en su propio setenv.bat y el Java registrado en su configuración de servicio de Windows, lo que puede apuntar a un JDK más antiguo o eliminado mientras que otras aplicaciones utilizan felizmente el sistema Java. Verifique el java.exe exacto dentro de la carpeta a la que apunta Jira, con java -version ejecutándose desde esa carpeta.

¿Debo actualizar Java a la última versión para arreglar Jira?

Solo si la página Plataformas compatibles de Atlassian para su versión exacta de Jira enumera esa versión de Java. Los más nuevos no son compatibles automáticamente: un Java demasiado nuevo rompe Jira tan confiablemente como uno demasiado antiguo, a través de versiones de clases modificadas y reglas de módulo más estrictas. Coincidir con el rango documentado; No persigas el número más alto.

Jira empezó a fallar justo después de una actualización de Java en el servidor. que paso

La actualización probablemente reemplazó o eliminó el JDK al que apunta JAVA_HOME de Jira, o cambió el sistema JAVA_HOME que otro administrador copió posteriormente en la configuración de Jira. La solución no es revertir todo el servidor: instale o mantenga un JDK compatible uno al lado del otro y apunte solo a Jira, usando setenv.bat y la configuración de Java del servicio.

Esta guía se basa en el vídeo Anshu técnico sobre cómo arreglar un Jira que no arranca • ¿Atascado en un escalón? Pregunte en los comentarios del video; recibirá una respuesta 🙏