2014-09-16 12 views
152

Im cercando di compilare un codice a sto usando Intellij ultimo 13.1.4, ma ottengo il seguente errore e non ho idea di cosa significhi:Errore: java: versione sorgente non valida: 8 in Intellij. Cosa significa?

Information:Using javac 1.7.0_55 to compile java sources 
Information:java: Errors occurred while compiling module 'Example' 
Information:Compilation completed with 1 error and 0 warnings in 3 sec 
Information:1 error 
Information:0 warnings 
Error:java: invalid source release: 8 

La mia ipotesi è che la sua qualcosa legato a Java 8 vs Java 7, ma non ho idea di cosa specificamente. Ho provato a Google in giro per questo messaggio, ma o parlano di javac o target release, quindi non sembra proprio applicarlo.

+1

Quale versione di Java è installata? A cosa JRE/JDK hai indirizzato intellij, nelle impostazioni IDE? – hexafraction

+2

Probabilmente le impostazioni del progetto. Controlla il JDK che stai indicando e il livello di lingua che hai richiesto. – duffymo

+1

@duffymo avevi ragione, stava puntando a 8. Non avevo capito che era un'impostazione. –

risposta

363

Ho avuto lo stesso problema quando "downgrade" di un progetto da Java 8 a Java 6. Il motivo era che non era stato modificato in tutti i punti di IntelliJ.

In IntelliJ 13.1.4 ho dovuto cambiare versione Java e SDK per i seguenti posti non per ottenere questo errore:

  • File -> Struttura del progetto -> Impostazioni progetto
  • File -> Progetto struttura -> Impostazioni modulo -> Scheda: Fonti: livello linguistico
  • File -> Progetto struttura -> Impostazioni modulo -> Scheda: dipendenze: modulo SDK
  • File -> Impostazioni -> Compiler -> Java Compiler -> Bytecode di destinazione versione

screen shot of File > Project Structure > Project

screen shot of File > Project Structure > Modules > Sources

screen shot of File > Project Structure > Modules > Dependencies

screen shot of File > Settings/Preferences > Compiler > Java Compiler

L'ultimo proiettile è stato quello che non è stato aggiornato nel mio caso. Una volta modificato, l'errore è scomparso.

+16

quello uccidermi era questo: 'File -> Impostazioni -> Compiler -> Java Compiler -> target bytecode version'. Grazie. – bitoiu

+12

Ero in esecuzione anche in questo problema, ma nessuno dei precedenti ha funzionato.Ho dovuto fare 'IntelliJ IDEA -> Preferenze ... -> Build, Execution, Deployment -> Build Tools -> Gradle -> Gradle JVM', nel caso in cui qualcuno si imbattesse in questo problema mentre si utilizza Gradle. – Emil

+2

Origine: Livello lingua passare a 7 - Diamanti, ARM, multi-catch ecc. Per IDEA 15 – Bastet

16

Controlla la tua pom.xml prima (se ne avete uno)
Controllare JDK dipendenza del modulo. Assicurarsi che sia 1.8
Per fare questo, andare a Struttura del progetto -> SDK
Aggiungere il percorso in cui avete memorizzato 1.8 (jdk1.8.0_45.jdk nel mio caso)
applicare le modifiche
Ora , Vai al progetto Struttura -> Moduli
Cambiare l'SDK modulo per 1.8
applicare le modifiche

Voilà! Hai finito

4

Se stai usando Gradle come strumento di costruzione e ottieni questo errore quando esegui un'attività Gradle i.e TomcatRun dare un'occhiata alla mia altra risposta alla stessa domanda la risposta di

javac: invalid target release: 1.8

+0

Grazie! Questo ha risolto il mio problema dopo che le risposte di cui sopra non l'hanno fatto. – chazzlabs

+0

Anche grazie! Non potrei capire questo – Frederik

1

Andreas Lundgren ha funzionato e sono stato in grado di compilare ed eseguire la mia app.

Tuttavia, quando ho provato ad eseguire i test JUnit associati del progetto che ho ricevuto lo stesso errore. Esecuzione

gradle -version 

dal prompt dei comandi di Windows ha mostrato che Gradle stava ancora raccogliendo il JDK non corretta. Per risolvere il problema, ho dovuto impostare la variabile di ambiente JAVA_HOME in modo che punti al jdk corretto e riavvii IntelliJ.

1

Variazione pom.xml1.6 per 1.8

<plugin> 
    <artifactId>maven-compiler-plugin</artifactId> 
    <configuration> 
     <source>1.8</source> 
     <target>1.8</target> 
    </configuration> 
</plugin> 
3

Per gli utenti che hanno Gradle questi problemi, se non al di sopra aiuta questo è ciò che ha risolto il mio problema - applicare questo alle dichiarazioni contenute nel file build.gradle:

targetCompatibility = 1.6 //or 1.7;1.8 and so on 
sourceCompatibility = 1.6 //or 1.7;1.8 and so on 

Problema risolto!

0

Per gli utenti Grails, applicare queste dichiarazioni nel file BuildConfig.groovy:

grails.project.target.level = 1.6 //or 1.7;1.8 and so on 
grails.project.source.level = 1.6 //or 1.7;1.8 and so on 
2

Può essere semplicemente superati impostando su Project Structure. Hai solo bisogno di selezionare il percorso giusto per la versione correlata di JDK. Selezionare new nella scheda dipendenze e selezionare il percorso. E 'fatto!

enter image description here

0

è necessario fare clic per il progetto di Open Impostazioni modulo e modificare il percorso del JDK, se nel file POM si utilizza JDK 1.8, configurare JDK 1.8 con percorso corretto.

0

Ho controllato tutte le suddette versioni del progetto, versione del modulo, versione del codice progetto, impostazioni della versione bytecode di destinazione in IntelliJ Idea, ma erano tutte uguali a quelle graffiate.

mi faccia questo errore Error:java: invalid source release: 1.8 in IntelliJ Idea 2017.2.6 perché ho aggiornato la versione Maven file di pom dipendenza, che (dipendenza) avrebbero dovuto costruire per JDK 1.8 applicazione e io stavamo costruendo la mia applicazione su e con la fonte compilatore Maven e la destinazione JDK 1.7.

Quindi ho di nuovo downgrade della versione dipendenza meno un in Maven pom, e l'errore andato dopo progetto Ricostruire Module 'xyz_project'.

Problemi correlati