2011-10-10 16 views
168

Ho creato un nuovo progetto dinamico in Eclipse Helios Version, dove la mia versione JRE è impostata su 1.6. Ho aggiunto funzionalità Maven all'applicazione Web facendo clic su ConfiguraConverti in progetto Maven.Il livello del compilatore Java non corrisponde alla versione del facet del progetto Java installato

Dopo aver aggiunto questo, un errore di generazione apparve nella vista Problemi di Eclipse:

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

Per favore mi dica come risolvere questo errore (io voglio avere la mia versione JRE 1.6 da solo).

risposta

135

Supponendo che si utilizzi il plugin m2e in Eclipse, è necessario specificare le versioni source e target come 1.6 per maven-compiler-plugin. m2e utilizza questi valori per determinare il livello del compilatore Java del progetto. Un frammento del POM è la seguente:

<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.source e maven.compiler.target con valori di 1.6, che capita di essere l'equivalente:

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

Puoi farlo: - tasto destro del mouse sul progetto - Fare clic su Proprietà - Selezionare l'opzione "Progetto sfaccettature" nel menu a sinistra - Under sfaccettature sezione "Java" a destra, modificalo in "1.6", "1.7" o nella tua versione ... - Fai clic su Ok –

+2

@ThiagoPereira Le modifiche vengono perse quando si reimporta in un altro spazio di lavoro. Scopri come funziona m2e. –

332

Se il progetto non è un progetto Maven, fare clic con il tasto destro del mouse sul progetto e scegliere Proprietà per aprire la finestra di dialogo Proprietà progetto.

C'è una voce Sfaccettature progetto sulla sinistra, selezionarla, cercare la sfaccettatura Java nell'elenco, scegliere la versione che si desidera utilizzare per il progetto e applicare.

Project Factes - Java version

+15

Il faccetto del progetto-> Java deve corrispondere a qualsiasi cosa tu abbia nel pom.xml per l'origine e destinazione del manufatto-plugin di maven-plugin. –

+4

La causa principale di questo problema dovrebbe essere la risposta fornita da @VineetReynolds –

+3

Ho questo problema e suona come se fosse un problema di Maven, ma non uso Maven, non ho un file POM, e I ' Non sono nemmeno sicuro di avere il plugin Maven. Eppure ottengo lo stesso errore; my eclipse è impostato per usare java 1.7 ma la pagina facet del mio progetto mi consentirà solo di scegliere 1.6. Che cosa sto facendo di sbagliato? – rjcarr

14

TK Gospodinov risposta è corretta, anche per i progetti Maven. Attenzione: io uso Maven. Il pom era corretto e ha ancora questo problema. Sono andato su "Project Facets" e ho rimosso la selezione Java che puntava a 1.6 ma il mio progetto utilizza 1.7. A destra nella scheda "Runtimes" ho dovuto controllare l'opzione jdk1.7. Nulla è apparso a sinistra anche dopo aver premuto "Applica". Il problema è andato via, ma è per questo che continuo a pensare che questa risposta sia importante per il problema specifico del "Progetto Sfaccettature". Dopo aver cliccato su OK se torni su "Project Facets", noterai Java come versione 1.7, quindi ora puoi selezionarlo per assicurarti che il progetto sia "contrassegnato" come un progetto Java. Avevo anche bisogno di fare clic destro sul progetto e selezionare Maven | Update Project.

2

Fare clic destro del progetto e selezionare proprietà Clicca il compilatore Java da sinistra e cambiare per la vostra versione richiesta Spero che questo aiuti

3

Il Progetto Facet-> Java deve corrispondere tutto quello che hai nel pom.xml per il maven-compilatore-plugin artefatto sorgente e destinazione. Questo è perfetto. Ma se non lo si ha qui, è possibile anche risolverlo facendo corrispondere la versione del compilatore Java in Porro-facet dall'impostazione: Eclispe-> Preferenze-> Java-> Compilatore

3

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

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

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

+0

appena rimosso il progetto da eclipse e re-importato risolto il problema. –

3

ho risolto facendo MyProject --->java Resource ---->librerie -> J RE Sistema Biblioteche [java-1.6] click su questo andare al suo "immobili "selezionare "Percorso di classe Container" cambiare l'ambiente Execution a java-1.8 (jdk1.8.0-35) (cioè ultima)

Change the jdk to latest

3

È possibile modificare progetto sfaccettatura da Progetto -> Proprietà -> Progetto Facet -> Java -> {tenuti versione del JDK}

0

Se si utilizza Eclipse,

Under.settings clicca 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> 

cambiare la versione alla versione corretta.

1

In Eclipse, fare clic con il tasto destro del mouse sul progetto, selezionare Maven> Aggiorna projetc. Aspetta e l'errore sparirà. Questo è già configurato correttamente nella versione di Java per questo progetto.

enter image description here

4

ho risolto questo problema impostando la versione Java in Project Facet proprietà di proprietà del progetto, fare clic destro sulla cartella principale del progetto -> Proprietà, cercare di progetto Facets, e selezionare la versione di Java compatibili.

Per riferimento -

enter image description here

Problemi correlati