J'ai créé un nouveau projet dynamique sous la version Eclipse Helios, où ma version de l'environnement JRE est définie sur 1.6. J'ai ajouté des fonctionnalités Maven à l'application Web en cliquant sur Configurer → Convertir en projet Maven.
Après avoir ajouté ceci, une erreur de construction est apparue dans la vue Problèmes Eclipse:
Java compiler level does not match the version of the installed Java project facet.
Unknown Faceted Project Problem (Java Version Mismatch)
Dites-moi comment résoudre cette erreur (je souhaite utiliser la version 1.6 de JRE uniquement).
En supposant que vous utilisiez le plug-in m2e dans Eclipse, vous devrez spécifier les versions source
et target
de 1,6 pour maven-compiler-plugin
. m2e utilise ces valeurs pour déterminer le niveau de compilateur du projet Java. Un extrait du POM est présenté ci-dessous:
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>
Alternativement, vous pouvez spécifier les propriétés maven.compiler.source
et maven.compiler.target
avec des valeurs de 1.6, qui se trouvent être l'équivalent:
<properties>
<maven.compiler.target>1.6</maven.compiler.target>
<maven.compiler.source>1.6</maven.compiler.source>
</properties>
Si votre projet n'est pas un projet Maven, cliquez avec le bouton droit de la souris sur votre projet et choisissez Propriétés pour ouvrir la boîte de dialogue Propriétés du projet.
Il y a un élément Projet Facettes sur la gauche, sélectionnez-le, recherchez la facette Java dans la liste, choisissez la version que vous souhaitez utiliser pour le projet et appliquez-la.
La réponse de TK Gospodinov est correcte même pour les projets Maven. Attention: j'utilise Maven. Le pom était correct et toujours eu ce problème. Je suis allé à "Project Facets" et en fait, j'ai supprimé la sélection Java qui indiquait 1.6 mais mon projet utilise 1.7. A droite dans l'onglet "Runtimes", j'ai dû cocher l'option jdk1.7. Rien n'est apparu à gauche, même après avoir cliqué sur "Appliquer". Le problème a disparu, raison pour laquelle je pense toujours que cette réponse est importante pour le problème spécifique lié aux "facettes du projet". Après avoir appuyé sur OK, si vous revenez à "Projet Facettes", vous remarquerez que Java apparaît en tant que version 1.7. Vous pouvez donc le sélectionner pour vous assurer que le projet est "marqué" en tant que projet Java. J'avais également besoin de cliquer avec le bouton droit sur le projet et de sélectionner Maven | Update Project.
Vous pouvez changer de facette de projet à partir de Projet -> Propriétés -> Facette de projet -> Java -> {version requise du JDK}
J'ai changé la configuration à l'intérieur de workspace/project/.setting/org.Eclipse.wst.common.project.facet.core
à:
installed facet="jst.web" version="2.5"
installed facet="jst.Java" version="1.7"
Avant de modifier la configuration, supprimez le projet de l'EDI. Cela a fonctionné pour moi.
Cliquez avec le bouton droit sur le projet et sélectionnez les propriétés. Cliquez sur le compilateur Java à gauche et sélectionnez la version de votre choix. J'espère que cela vous aidera
Dans Eclipse, faites un clic droit sur votre projet, puis sélectionnez Maven> Mettre à jour le projet. Attendez et l'erreur disparaîtra. Ceci est déjà configuré correctement la version de Java pour ce projet.
Si vous utilisez Eclipse,
Cliquez sur 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>
Changer la version à la version correcte.