theme studio source invalid intellij error darkactionbar java eclipse ant

java - studio - ¿Por qué Ant me está dando un error de versión major.minor no compatible?



error:java: invalid source release: 9 (12)

Estoy ejecutando este objetivo en Ant.

<target name="compile" depends="init" description="compile the source " > <!-- Compile the java code from ${src} into ${build} --> <javac srcdir="${src}" destdir="${build}"/> </target>

Me está dando este error.

C:/Users/../workspace/../build.xml:21: java.lang.UnsupportedClassVersionError: com/sun/tools/javac/Main : Unsupported major.minor version 51.0

Aquí están las versiones:

Apache Ant(TM) version 1.8.2 JDK version is JDK 1.7.0

Aquí está mi configuración de compilador en Eclipse.

Por favor, ayúdame a resolverlo.


  1. Compruebe si tiene jdk instalado en la ruta "C: / Archivos de programa / Java" Si no, instale el JDK en su máquina

  2. En Eclipse, haga clic derecho en "build.xml" y luego seleccione Ejecutar como> Configuración de herramientas externas

  3. Haga clic en la pestaña " JRE " y luego haga clic en " JRE instalados"> "AGREGAR"> "VM estándar"> Haga clic en "Siguiente"

  4. Seleccione el directorio "C: / Archivos de programa / Java / jdk1.7.x_xx" y el directorio se agregará a la "jres instalada"

  5. Seleccione el nuevo directorio JDK y haga clic en "Aceptar"

  6. Haga clic en el menú desplegable "Seperate JRE" y seleccione la versión de JDK "jdk1.7.x_xx " y haga clic en " Ejecutar ".

Esto ayudaría :)


Compruebe si tools.jar utilizado durante la compilación cumple con el conjunto JRE. Si está en eclipse, verifique las versiones como:
Ir a ventana-> Preferencias
- Compruebe Ant Runtime seleccionando Runtime bajo Ant en el panel izquierdo. Verifique las entradas globales en la pestaña classpath. Puede ver la versión en la ruta de la carpeta.
- En el panel izquierdo, compruebe los JRE instalados en Java. Mira esta versión.
También tuve el mismo problema cuando mi JRE seleccionado era 1.6.0_24 y tools.jar en el tiempo de ejecución de Ant provenía de jdk 1.7. Si ambos son de versiones diferentes- 1.6 / 1.7, corríjalos corrigiendo su ruta. Normalmente, tools.jar se puede encontrar en: C: / Program Files / Java / jdk1.xx / lib. Del mismo modo, si es necesario, agregue el JRE señalando C: / Program Files / Java / jdk1.xx /


Debería indicar qué versión de Ant y qué versión de JVM.

Puede ejecutar ant -v para ver qué configuración usa Ant según el documento

Ant 1.8 * requires JDK 1.4 o superior.

La ''Versión principal no compatible 51min'' significa que se compiló un código para una versión del JDK, y que está tratando de ejecutar esas clases bajo una versión anterior del JDK. (ver here )


Descargue la versión JDK del JRE a los JRE instalados y use eso en su lugar.
En Eclipse Indigo, si comprueba la pestaña classpath en la configuración de ejecución para hormiga, verá que de forma predeterminada agrega las herramientas.jar del sistema. Entonces, si ejecuta Eclipse usando Java7 y ejecuta una compilación ant con un JRE6 por separado genera un UnsupportedClassVersionError. Cuando agregué la versión de JDK, Eclipse recogió tools.jar del JDK y mi tarea ant se ejecutó correctamente.


En mi caso, el proyecto era un Maven, tenía JDK 1.8.0, Eclipse: Kepler e instalé el plugin M2Eclipse de Eclipse Marketplace.

Cambiar el nivel del compilador no ayudó.

Finalmente utilicé la última versión de eclipse (Luna), compilador nivel 1.7, el mismo complemento M2Eclipse y el problema fue resuelto.


La jre de tiempo de ejecución se estableció en jre 6 en lugar de jre 7 en la ventana de configuración de compilación.


Me encuentro con el mismo problema. Luego entré en Ejecutar como -> Ant build ...-> jre. Encontré que la jre utilizada es JRE por separado, que es el eclipse predeterminado JRE (1.6). Luego fui a las periferias -> instalé los JRE. Y cambie la ubicación del eclipse JRE predeterminado a mi jdk (1.7).

El problema esta resuelto.


Me gustaría agregar mis resultados aquí para ayudar a otros, ya que si bien es relevante, ninguno de ellos resolvió mi problema.
Tuve la situación única en la que pasé del taller para weblogic 9.2 a Helios con JDK6. Sin embargo, nuestros expertos en seguridad nos empujaron a JDK7, lo que obligó a mi mano a ir a Indigo.

Al final utilicé el explorador de procesos sysinternals para encontrar si algo estaba usando actualmente la carpeta JDK6 que todavía existía en mi sistema. Efectivamente era Eclipse. Abrí eclipse.ini y la segunda línea hacía referencia al JDK6, lo reemplacé por el directorio JDK7, inicié Eclipse y la compilación tuvo éxito.


Si obtiene este error porque intenta construir a Java 6 intencionalmente, pero tiene Java 7 en otro lugar en Eclipse, puede ser porque está haciendo referencia a un Java tools.jar en un entorno Java 6.

Tendrá que instalar el JDK 6 ( no JRE) y agregar el JRE 6 tools.jar como entrada de usuario en el Classpath de la configuración de compilación, que se encuentra arriba de JRE 7 tools.jar .


Simplemente revisa tu tiempo de ejecución yendo a la configuración de compilación de ant y cambia el jre contra a jdk (si jdk 1.7 entonces jre debería ser 1.7).

enter image description here


Una posible causa de esto es un JRE incorrecto seleccionado en las opciones de compilación Ant. Después de hacer clic derecho en build.xml y elegir ''Ejecutar como ...'' y luego ''Ant Build ...'', asegúrese de que se elija el JRE correcto en la pestaña JRE del cuadro de diálogo de opciones de configuración. Verá una opción ''JRE separado''; asegúrese de seleccionar el jdk apropiado del menú desplegable antes de hacer clic en ''Ejecutar''.


ir a ejecutar la opción ---> seleccionar la opción de herramienta externa ----> configuración de herramienta externa ---> seleccionar construcción de hormiga ----> seleccionar tu build.xml ---> allí encontrarás la opción JDK --- > seleccione su JRE requerido