Il livello del compilatore Java non corrisponde alla versione del facet del progetto Java installato


203

Ho creato un nuovo progetto dinamico sotto la versione Helios di Eclipse, dove la mia versione JRE è impostata su 1.6. Ho aggiunto le funzionalità di Maven all'applicazione Web facendo clic su ConfiguraConverti in progetto Maven .

Dopo aver aggiunto questo, nella vista Problemi di Eclipse è apparso un errore di build:

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

Per favore, dimmi come risolvere questo errore (voglio avere la mia versione di JRE solo come 1.6).


La risposta di Bigleftie mi ha servito bene per un progetto non Maven.
Jack Mason,

Gli utenti di eclipse possono leggere questo journaldev.com/3334/…
Ahmad Nadeem,

Risposte:


167

Supponendo che si stia utilizzando il plug-in m2e in Eclipse, è necessario specificare le versioni sourcee targetcome 1.6 per maven-compiler-plugin. m2e utilizza questi valori per determinare il livello del compilatore Java del progetto. Di seguito è riportato un frammento del POM:

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

In alternativa, è possibile specificare le proprietà maven.compiler.sourcee maven.compiler.targetcon valori di 1.6, che risultano essere l'equivalente:

<properties>
    <maven.compiler.target>1.6</maven.compiler.target>
    <maven.compiler.source>1.6</maven.compiler.source>
</properties>

60
Puoi farlo: - Fai clic con il pulsante destro del mouse sul tuo progetto - Fai clic su Proprietà - Fai clic sull'opzione "Sfaccettature del progetto" nel menu a sinistra - Nella sezione Faccette "Java" sulla destra, modificalo in "1.6", "1.7" o il tuo versione ... - Fai clic su OK
Thiago Pereira,

3
@ThiagoPereira Le modifiche si perdono quando si reimporta in un'area di lavoro diversa. Scopri come funziona m2e.
Vineet Reynolds,

Gli utenti di eclipse possono leggere journaldev.com/3334/…
Ahmad Nadeem,

401

Se il tuo progetto non è un progetto Maven, fai clic con il pulsante destro del mouse sul progetto e scegli Proprietà per aprire la finestra di dialogo Proprietà progetto.

C'è un elemento Facet del progetto sulla sinistra, selezionalo, cerca il facet Java nell'elenco, scegli quale versione vuoi usare per il progetto e applica.

Fatti del progetto - Versione Java


19
Il Project Facet-> Java dovrebbe corrispondere a qualsiasi cosa tu abbia nel pom.xml per l'origine e la destinazione del manufatto del plugin compilatore-maven.
Arye Rosenstein,

4
La causa principale di questo problema dovrebbe essere la risposta fornita da @VineetReynolds
Jerry Tian il

4
Ho questo problema, e sembra che sia un problema maven, ma non uso maven, non ho un file POM e non sono nemmeno sicuro di avere il plugin maven. Eppure ottengo questo stesso errore; my eclipse è impostato per usare java 1.7 ma la pagina delle sfaccettature del mio progetto mi permetterà solo di scegliere 1.6. Che cosa sto facendo di sbagliato?
rjcarr,

7
Quattro cose devono corrispondere 1) Progetto-> Percorso di compilazione Java-> Librerie-> Versione JRE 2) Progetto-> Compilatore Java-> Livello di conformità del compilatore 3) Progetto-> Sfaccettature del progetto-> Java-> Versione 4) (se si utilizza Maven ) pom.xml - sorgente e destinazione artefatto plug-in maven-compilatore
bigleftie

1
Ho una seconda risposta a @TK Gospodinov. il mio pom era aggiornato con la versione Java, ma la causa del progetto era il colpevole.
Soman Dubey,

18

La risposta di TK Gospodinov è corretta anche per i progetti di maven. Attenzione: uso Maven. Il pom era corretto e ha ancora questo problema. Sono andato a "Project Facets" e in realtà ho rimosso la selezione Java che puntava a 1.6 ma il mio progetto utilizza 1.7. Sulla destra nella scheda "Runtime" ho dovuto selezionare l'opzione jdk1.7. Nulla è apparso sulla sinistra anche dopo aver premuto "Applica". Il problema è andato via, ma è per questo che penso ancora che questa risposta sia importante della specifica questione "Facce del progetto". Dopo aver premuto OK se torni a "Sfaccettature del progetto", noterai che Java viene visualizzato come versione 1.7, quindi puoi selezionarlo per assicurarti che il progetto sia "contrassegnato" come progetto Java. Ho anche dovuto fare clic con il tasto destro sul progetto e selezionare Maven | Aggiorna progetto.


6

Ho risolto questo problema impostando la versione java nella proprietà Facet progetto delle proprietà del progetto, fare clic con il tasto destro sulla cartella principale del progetto -> Proprietà, cercare Facet progetto e selezionare la versione java compatibile.

Per riferimento -

inserisci qui la descrizione dell'immagine


5

Ho modificato la configurazione all'interno workspace/project/.setting/org.eclipse.wst.common.project.facet.corein:

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

Prima di modificare la configurazione, rimuovere il progetto dall'IDE. Questo ha funzionato per me.


appena rimosso il progetto da eclipse e reimportato risolto il problema.
Mohammad Faisal,

5

L'ho risolto con Myproject ---> java Resource ----> librerie -> J RE System Libraries [java-1.6] clicca su questo vai alla sua " proprietà " seleziona "Classpath Container" cambia l' ambiente di esecuzione in java- 1.8 (jdk1.8.0-35) (che è l' ultimo )

Cambia il jdk in ultimo


4

Il Project Facet-> Java dovrebbe corrispondere a tutto ciò che hai nel pom.xml per l'origine e la destinazione del manufatto del plug-in del compilatore maven.Questo è perfetto.Ma se non lo possiedi qui puoi anche aggiustarlo abbinando la versione del compilatore Java in Porject-Facets dall'impostazione: Eclispe-> Preferenze-> Java-> Compilatore


4

È possibile modificare il facet del progetto da Progetto -> Proprietà -> Facet del progetto -> Java -> {versione JDK richiesta}


3

Fare clic con il tasto destro del mouse sul progetto e selezionare le proprietà Fare clic sul compilatore Java da sinistra e passare alla versione richiesta Spero che questo aiuti


2

In Eclipse, fai clic con il pulsante destro del mouse sul tuo progetto, vai su Maven> Aggiorna progetto. Attendere e l'errore scompare. Questo è già configurato correttamente la versione di Java per questo progetto.

inserisci qui la descrizione dell'immagine


1

Se si utilizza eclipse,

Under.settings fare clic su 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>

Cambia la versione con la versione corretta.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.