El nivel del compilador Java no coincide con la versión de la faceta del proyecto Java instalado

203

He creado un nuevo proyecto dinámico en la versión Eclipse Helios, donde mi versión JRE está configurada en 1.6. He agregado capacidades de Maven a la aplicación web haciendo clic en ConfigurarConvertir a proyecto Maven .

Después de agregar esto, apareció un error de compilación en la vista Problemas de Eclipse:

Java compiler level does not match the version of the installed Java project facet.
Unknown Faceted Project Problem (Java Version Mismatch)

Por favor, dígame cómo resolver este error (quiero tener mi versión de JRE como 1.6 solamente).

usuario974802
fuente
La respuesta de Bigleftie me sirvió mucho para un proyecto no Maven.
Jack Mason el
los usuarios de eclipse pueden leer este journaldev.com/3334/…
Ahmad Nadeem

Respuestas:

167

Suponiendo que está usando el plugin M2e en Eclipse, tendrá que especificar el sourcey targetcomo versiones 1.6 para maven-compiler-plugin. m2e usa estos valores para determinar el nivel del compilador Java del proyecto. A continuación se muestra un fragmento del POM:

<build>
  <plugins>
    <plugin>
      <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <source>1.6</source>
          <target>1.6</target>
        </configuration>
    </plugin>
  </plugins>
</build>

Alternativamente, puede especificar las propiedades maven.compiler.sourcey maven.compiler.targetcon valores de 1.6, que resultan ser el equivalente:

<properties>
    <maven.compiler.target>1.6</maven.compiler.target>
    <maven.compiler.source>1.6</maven.compiler.source>
</properties>
Vineet Reynolds
fuente
6060
¿Puedes hacerlo? - Haz clic derecho en tu proyecto - Haz clic en Propiedades - Haz clic en la opción "Project Facets" en el menú de la izquierda - En la sección Facets "Java" a la derecha, cámbialo a "1.6", "1.7" o tu versión ... - Haga clic en Aceptar
Thiago Pereira
3
@ThiagoPereira Pierde esos cambios cuando vuelve a importar en un espacio de trabajo diferente. Aprende cómo funciona m2e.
Vineet Reynolds
los usuarios de eclipse pueden leer journaldev.com/3334/…
Ahmad Nadeem
401

Si su proyecto no es un proyecto Maven, haga clic con el botón derecho en su proyecto y elija Propiedades para abrir el cuadro de diálogo Propiedades del proyecto.

Hay un elemento de Facetas de proyecto a la izquierda, selecciónelo, busque la faceta de Java en la lista, elija la versión que desea usar para el proyecto y aplique.

Proyecto Factes - versión Java

TK Gospodinov
fuente
19
El Project Facet-> Java debe coincidir con lo que tenga en pom.xml para el origen y el destino del artefacto maven-compiler-plugin.
Arye Rosenstein
44
La causa raíz de este problema debería ser la respuesta proporcionada por @VineetReynolds
Jerry Tian
44
Tengo este problema, y ​​parece que es un problema de Maven, pero no uso Maven, no tengo un archivo POM y ni siquiera estoy seguro de tener el complemento Maven. Sin embargo, me sale este mismo error; mi eclipse está configurado para usar java 1.7 pero la página de facetas de mi proyecto solo me permitirá elegir 1.6. ¿Qué estoy haciendo mal?
rjcarr
77
Cuatro cosas deben coincidir 1) Proyecto-> Ruta de compilación Java-> Bibliotecas-> JRE versión 2) Proyecto-> Compilador Java-> Compilador Nivel de cumplimiento 3) Proyecto-> Facetas de proyecto-> Java-> Versión 4) (si usa Maven ) pom.xml - fuente y destino del artefacto del complemento del compilador maven
bigleftie
1
Segundo la respuesta de @TK Gospodinov. mi pom estaba actualizado con la versión de Java, pero la faceta del proyecto fue la culpable.
Soman Dubey
18

La respuesta de TK Gospodinov es correcta incluso para proyectos maven. Cuidado: yo uso Maven. El pom fue correcto y aún tiene este problema. Fui a "Project Facets" y en realidad eliminé la selección de Java que apuntaba a 1.6 pero mi proyecto está usando 1.7. A la derecha en la pestaña "Tiempos de ejecución" tuve que marcar la opción jdk1.7. Nada apareció a la izquierda incluso después de presionar "Aplicar". Sin embargo, el problema desapareció y es por eso que sigo pensando que esta respuesta es importante para el problema específico relacionado con las "facetas del proyecto". Después de presionar OK si vuelve a "Project Facets", notará que Java aparece como versión 1.7, por lo que ahora puede seleccionarlo para asegurarse de que el proyecto esté "marcado" como un proyecto Java. También necesitaba hacer clic derecho en el proyecto y seleccionar Maven | Actualizar proyecto.

Néstor Urquiza
fuente
6

Resolví este problema configurando la versión de Java en la propiedad Project Facet de las propiedades del proyecto, haga clic derecho en la carpeta raíz del proyecto -> Propiedades, busque Facetas del proyecto y seleccione la versión compatible de Java.

Para referencia -

ingrese la descripción de la imagen aquí

Persona de libre dedicación
fuente
5

Cambié la configuración interna workspace/project/.setting/org.eclipse.wst.common.project.facet.corea:

installed facet="jst.web" version="2.5"
installed facet="jst.java" version="1.7"

Antes de cambiar la configuración, elimine el proyecto del IDE. Esto funcionó para mí.

thedheeraz
fuente
acaba de eliminar el proyecto de eclipse y volver a importarlo solucionó el problema.
Mohammad Faisal
5

Lo resolví por Myproject ---> java Resource ----> bibliotecas -> J RE System Libraries [java-1.6] haga clic en este para ir a su " propiedad ", seleccione "Classpath Container", cambie el entorno de ejecución a java- 1.8 (jdk1.8.0-35) (eso es lo último )

Cambia el jdk al último

RishiKesh Pathak
fuente
4

El Project Facet-> Java debe coincidir con lo que tenga en pom.xml para la fuente y el destino del artefacto maven-compiler-plugin. Esto es perfecto. Pero si no lo tiene aquí, también puede solucionarlo haciendo coincidir la versión del compilador Java en Porject-Facets desde la configuración: Eclispe-> Preferences-> Java-> Compiler

usuario3925215
fuente
4

Puede cambiar la faceta del proyecto desde Proyecto -> Propiedades -> Faceta del proyecto -> Java -> {versión JDK requerida}

Anant Laxmikant Bobde
fuente
3

Haga clic derecho en el proyecto y seleccione las propiedades Haga clic en el compilador de Java de la izquierda y cambie a la versión requerida Espero que esto ayude

Rafael
fuente
2

En Eclipse, haga clic derecho en su proyecto, vaya a Maven> Actualizar proyecto. Espere y el error desaparecerá. Esto ya está configurado correctamente la versión de Java para este proyecto.

ingrese la descripción de la imagen aquí

Danilo Lira
fuente
1

Si usa eclipse,

En.configuraciones, haga clic en org.eclipse.wst.common.project.facet.core.xml

<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
  <installed facet="java" version="1.7"/>
</faceted-project>

Cambie la versión a la versión correcta.

ADL
fuente