2010-06-29 22 views
120

Creo un proyecto de Maven en Eclipse Helios. Funciona bien por un día, pero luego aparece esta advertencia:Advertencia: la ruta de compilación especifica el entorno de ejecución J2SE-1.4

La ruta de compilación especifica el entorno de ejecución J2SE-1.4. No hay JRE instalados en el espacio de trabajo que sean estrictamente compatibles con este entorno.

Desde este mensaje, el proyecto detuvo la compilación y la depuración. ¿Alguien tiene solución para este problema?

Respuesta

203

En Eclipse de su proyecto:

  1. Derecho + clic en su proyecto
  2. Haga clic en Propiedades trayectoria de la estructura
  3. Java: L ibraries; Retire el "Sistema de Bibliotecas JRE [J2SE 1.4]"
  4. Haga clic Añadir Biblioteca ->Biblioteca Sistema JRE
  5. Seleccione el nuevo "Execution Environment" o por defecto del espacio de trabajo JRE
+37

Esta respuesta es correcta para Eclipse, pero incorrecta para Maven + Eclipse –

+14

Esto solucionará temporalmente el problema, hasta que se ejecute otra creación de maven, en cuyo punto la versión de JRE se restablecerá a la predeterminada. Consulte la respuesta de Pascal Thivent para cambiar la versión predeterminada del JRE especificado en el POM. – matthewb

+0

Todo no funciona. Cada vez que hagas [Alt] [F5] para actualizar la configuración de maven, todos los ajustes manuales se harán muchos y la advertencia volverá. Ver bugs.eclipse.org/bugs/show_bug.cgi?id=376619 –

2

En las preferencias de Eclipse, vaya a Java-> Instalado JREs-> Entorno de ejecución y establecer un JRE Execution Environment para J2SE 1.4-

+0

Esto solucionará temporalmente el problema, hasta que se ejecute otra compilación maven, en cuyo momento la versión de JRE se restablecerá a la predeterminada. Consulte la respuesta anterior de Pascal Thivent para cambiar la versión predeterminada del JRE especificado en el POM. – matthewb

+0

No, esto está cambiando los JRE instalados en el espacio de trabajo y no el del proyecto específico (que es lo que tenía la respuesta aceptada) – AlBlue

0

¿Te ha configurado su proyecto para ser compilado con 1,4 cumplimiento? Si es así, do what krock said. O para ser más exactos, debe seleccionar el entorno de ejecución J2SE-1.4 y verificar uno de los JRE instalados que desea usar en el modo de cumplimiento 1.4; lo más probable es que tenga un 1.6 JRE instalado, solo verifique uno. O instale un 1.4 JRE si tiene un kit de instalación, y use ese.

De lo contrario, vaya a sus preferencias de Eclipse, Java -> Compilador y compruebe si el cumplimiento se establece en 1.4. Si es cambiarlo de nuevo a 1.6. Si no es ir a las propiedades del proyecto, y verifique si tiene configuraciones específicas del proyecto. Vaya a Java Compiler, y desmarque eso si desea usar las preferencias generales de eclipse. O establezca la configuración específica del proyecto en 1.6, de modo que siempre sea 1.6 independientemente de las preferencias de eclipse.

+0

Esto solucionará temporalmente el problema, hasta que se ejecute otra creación de maven, en cuyo momento se ejecutará la versión de JRE restablecer a los valores predeterminados. Consulte la respuesta anterior de Pascal Thivent para cambiar la versión predeterminada del JRE especificado en el POM. – matthewb

165

Ya sea que esté utilizando el complemento maven eclipse o m2eclipse, la configuración del proyecto de Eclipse se deriva del POM, por lo que necesita configurar el complemento compilador maven para 1.6 (por defecto es 1.4).

Agregue lo siguiente al de pom.xml su proyecto, guardar, y luego ir a su proyecto Eclipse y seleccione Propiedades> Maven> Configuración de la actualización del proyecto:

<project> 
<build> 
    <pluginManagement> 
    <plugins> 
    <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-compiler-plugin</artifactId>   
     <configuration> 
      <source>1.6</source> 
      <target>1.6</target> 
     </configuration> 
    </plugin> 
    </plugins> 
    </pluginManagement> 
</build> 
</project> 
+20

¡Esta es la respuesta correcta para esta pregunta! –

+3

Acepto, esta es la respuesta correcta. Muchas de las otras soluciones resolverán temporalmente el problema, hasta que se ejecute otra compilación Maven, en cuyo momento el JRE se restablecerá a la versión predeterminada. Agregar este complemento al POM cambia la versión JRE predeterminada. – matthewb

+0

¿Dónde (ubicación completa de XPATH) en el archivo pom.xml funciona? Dondequiera que lo agregue, Maven se queja de un pom malformado. –

10

Las soluciones anteriores fijan el proyecto o solucionar el problema de alguna manera. A veces simplemente no quiere arreglar el proyecto y en su lugar esconder la advertencia.

Para hacerlo, configure los contenidos del panel de advertencia y asegúrese de alternar la categoría "compilación" -> "Problema de ruta del sistema JRE". La interfaz de usuario para este diálogo es un poco compleja/extraña/usabilidad desafiada, por lo que es posible que tenga que manipular algunas de las opciones para que haga lo que quiera.

+0

Tengo dos espacios de trabajo configurados de la misma manera con un JDK 7 pero compilando hasta 1.6 (lo cambiaremos eventualmente). La máquina fue cerrada por una buena actualización de Windows, y el espacio de trabajo que estaba abierto comenzó a mostrar esto y no se apaciguó. Gracias por señalar un trabajo! – RedYeti

+13

u otra manera ligeramente más limpia: Ventana -> Preferencias -> Java -> Compilador -> Creación -> Establecer "JRE estrictamente compatible para el entorno de ejecución" a "Ignorar" – RedYeti

+0

@RedYeti esto debería funcionar pero no es para mí (Eclipse 4.5) – NathanChristie

2

La causa real de esta advertencia es que ha configurado su proyecto para que se ejecute con una versión anterior de JRE que haya instalado. En general, esto ocurre cada vez que utiliza proyectos antiguos con JRE más nuevos.

Esto probablemente no cause ningún problema. Pero si quiere ser realmente en el lado de la salvación, debe instalar el JDK correcto y antiguo. Los puede encontrar aquí: http://www.oracle.com/technetwork/java/archive-139210.html

Si después de reiniciar Eclipse se puede entrar en Ventana> Preferencias> Java> JRE instalados> Entornos de Ejecución y establecer en su caso J2SE-1.4 la [perfecto] como lo llama eclipse.

+0

Upvoted porque tengo un proyecto Java 7 y solo Java 8 instalado. –

1

Si usted tiene Java 1.8 a continuación

necesita esta pieza XML en el proyecto pom.xml y actualización.

<properties> 
    <maven.compiler.target>1.8</maven.compiler.target> 
    </properties> 
-1

que estaba recibiendo la advertencia proyecto como "Vía de construcción especifica entorno de ejecución J2SE-1.5. No hay JRE instalados en el espacio de trabajo que son estrictamente compatible con este entorno". Quité la biblioteca J2SE1.5 y añadió Biblioteca Sistema de nuevo JRE que se resolvió mi problema

+0

¿Cómo difiere esto de la [respuesta de btpka3] (https://stackoverflow.com/a/5134274/3357935)? –

-1

Ampliar su proyecto en el espacio de trabajo >> Haz clic derecho (JRE Sistema de Bibliotecas) >> >> seleccione propiedades JRE la solución anterior por defecto selectworkspace Sol

+0

Esto simplemente repite información cubierta por [respuesta de btpka3] (https://stackoverflow.com/a/5134274/3357935) –

0

el procedimiento correcto para solucionar esta advertencia, ya que otras personas escriben, es ir dentro de su proyecto Propiedades y haga clic en Java Build Path situado a la izquierda. Ahora encontrará dentro de Bibliotecas VentanaJ2SE 1.5, haga doble clic en esta y una nueva ventana le dará la posibilidad de elegir la correcta Excecution Environment. Ahora seleccione su versión y la advertencia desaparecerá.

Cuestiones relacionadas