Imansible correggere la versione 52.0 major.minor non supportata anche dopo aver corretto la compatibilità

Quando provo a eseguire java .jar su un’altra macchina, ottengo l’errore

Major.minor non supportato versione 52.0

Ho compilato il mio programma utilizzando jdk 1.6 e la mia macchina (separata) ha java 7 installato.

Questa è la versione java che la mia macchina è in esecuzione:

java versione 1.7

Ecco le impostazioni nel mio IDE (Eclipse Lunar)

impostazioni del compilatore di Eclipse

eclipse impostazioni JRE

Perché ricevo ancora un errore non supportato?

Ho controllato la mia configurazione di esecuzione e la ho cambiata in jre6, ma quando lo faccio non posso nemmeno eseguire il mio programma nell’IDE.

Nota: il mio programma dovrebbe funzionare con jdk 6, se non è ansible jdk 7.

Percorso della mia class:

percorso di classe

Sono d’accordo con Chrylis: credi di aver cambiato le impostazioni di conformità del tuo progetto ma probabilmente non lo hai fatto.

Fai clic con il tasto destro sul tuo progetto e:

  • Java / Build Path: vai alla scheda Libraries e assicurati che stai usando jre6
  • Java / Compiler: assicurati di aver selezionato 1.6 compliance

A proposito, puoi “dire” a eclipse che jre8 è la conformità 1.6 cliccando su Finestra / Preferenze / Java / JREs / Ambiente di esecuzione e selezionando nel pannello di sinistra, Execution Environments, JavaSE-1.6 e nel pannello di JRE compatibile, jre8

Ciao ho trovato questo link che mi ha aiutato a capire il problema. Spero che sia utile Le versioni rilasciate finora sono

  • Java SE 8 = 52,
  • Java SE 7 = 51,
  • Java SE 6.0 = 50,
  • Java SE 5.0 = 49,
  • JDK 1,4 = 48,
  • JDK 1.3 = 47,
  • JDK 1.2 = 46,
  • JDK 1.1 = 45

e da questi dati significa semplicemente

Molte persone pensano perché si verifica un errore di discrepanza nella versione se Java è compatibile con le versioni precedenti. Beh, è ​​vero che Java è compatibile con le versioni precedenti, il che significa che è ansible eseguire un file di class Java o Java binary (file JAR) compilato nella versione precedente (java 6) in versione superiore, ad esempio Java 8, ma ciò non significa che sia ansible eseguire una class compilata utilizzando Java 7 in Java 5, perché? perché la versione più alta di solito ha caratteristiche che non sono supportate dalla versione più bassa.

A volte potresti avere più di una versione di Java installata nel tuo computer. Assicurati che l’applicazione in esecuzione stia puntando alla versione corretta o più alta disponibile.

Ho riscontrato un problema simile durante lo sviluppo su Android Studio 2.2.

Configurazione della mia macchina –

  1. JDK versione 1.7.0_79 installata
  2. JDK versione 1.8.0_101 installata
  3. La variabile di ambiente contiene: JAVA_HOME = 1.7.0_79 Percorso JDK e lo stesso viene aggiunto alla variabile percorso
  4. Posizione SDK progetto = C: \ Programmi \ Java \ jdk1.8.0_101

Ho quindi apportato le seguenti modifiche: 1. Disinstalla JDK 1.7.0_79 2. Aggiornato JAVA_HOME = 1.8.0_101 Percorso JDK (simile alla posizione dell’SDK)

Ora sono in grado di compilare ed eseguire la mia applicazione con successo, non più supportato major.minor errore 52.0 versione

Se stai provando ad eseguire il tuo programma / applicazione dal prompt dei comandi. Assicurati di riavviare il tuo cmd dopo aver cambiato la variabile JAVA_HOME. Molto semplice ma facilmente perso a volte.

Diverse possibilità che provoca questo problema. La causa principale non corrisponde alla versione del compilatore tra progetti e IDE. Per l’ambiente Windows è ansible fare riferimento a questo blog per risolvere i dettagli.

L’errore si verifica quando hai compilato la versione più alta di Java e si è tentato di eseguirlo con la versione inferiore di JRE. Anche con la mancata corrispondenza della versione minore avresti questo problema

Ho avuto il problema di compilare con JDK 1.8.0_31 ed è stato eseguito con jdk1.8.0_25 e stava visualizzando lo stesso errore. Una volta che il target è stato aggiornato alla versione superiore o compilato con la stessa versione o meno, il problema è risolto

Stai usando retrolambda? Se è così, fai semplicemente JAVA_HOME=$JAVA8_HOME .

Fonte: https://github.com/evant/gradle-retrolambda/issues/74

È un problema stupido, ma assicurati che jdk e jre siano l’ultima versione. Questo problema si verifica principalmente a causa dell’aggiornamento automatico di java (jre) e il jdk non è supportato per quella versione, questo crea problemi.

Fare clic con il tasto destro su Progetto, Proprietà —> Compilatore Java (sulla stessa pagina modificare il livello di conformità del compilatore a 1.6 (o) 1.7 (o) 1.8 (corrisponde alla propria JAVA_HOME)

Prima di tutto grazie per tutte le risposte di cui sopra. Tuttavia, uso Intellij Idea per l’uso quotidiano. Quindi, spero che la mia risposta aiuti gli altri.

Esegui il tuo terminale o riga di comando preferito. Quindi controlla la tua versione java eseguendo il comando

 java -version 

Quindi nella stampa Intellij

Ctrl + Alt + Maiusc + S

nel

 Project Settings 

scheda sotto

 Project SDK 

scegli la versione java appropriata. Infine, rieseguire il codice.

Ho avuto anche lo stesso problema. Ho risolto questo problema aggiornando il mio sistema jdk. Precedentemente ho usato jdk7.0 e ora è aggiornato a jdk8.0. trova sotto il link per scaricare il jdk aggiornato con la nuova versione. mi aiuta a risolvere il mio problema.

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html