# class version 52 und 56



## Jimmy_Farmer (13. Mai 2019)

Hallo

Ich habe mir ein Buch gekauft um endlich das Programmieren zu lernen. Das ist schon seit sehr vielen Jahren meine Vorstellung einer sehr schönen Freizeitgestaltung, vielleicht auch irgendwann einmal mehr.

Buch Titel "Java Programmieren für Einsteiger"
Die erste Aufgabe habe ich im Buch gelöst. danach sollte ich willkommen.class kompilieren - hat funktioniert. 
In der Eingabeaufforderung kommt nun der Fehler:

C:\Users\tosfl\Desktop\****\Programmieren>java willkommen
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.UnsupportedClassVersionError: willkommen has been compiled by a more recent version of the Java Runtime (class file version 56.0), this version of the Java Runtime only recognizes class file versions up to 52.0

Leider bin ich nun auf Version 56 und es wird nur bis 52 akzeptiert. 
Windows 10
Jdk-12.0.1
Wie kann ich das ändern?


----------



## mrBrown (13. Mai 2019)

Du hast aktuell zwei Java-Versionen installiert, Java 12 (= class Version 56) und Java 8 (= class Version 52).
Kompiliert hast du das Programm mit 12, ausgeführt mit 8, daher der Fehler.

Am einfachsten ist es, Java 12 zu deinstallieren (das Buch dürfte sowieso für 8 sein), und nur mit 8 zu arbeiten.


----------



## Jimmy_Farmer (13. Mai 2019)

Danke, 
das ich 2 verschieden hatte, habe ich schon in Erfahrung gebracht. Eher die Frage wo bekomme ich eine funktionierende Version her?
Wenn man hier Anfänger ist, kommen sehr viele verschieden Sachen auf einen zu. Ich hoffe in einiger Zeit darüber lachen zu können 
Das buch ist für 8, aber ab diesem Jahr muss man sich bei Oracle registrieren um Version 8 zu installieren.
Ich denke ich sollte bei 8 bleiben da das buch darauf aufgebaut ist.


----------



## kneitzel (13. Mai 2019)

Du kannst dir ein OpenJDK installieren. Ich nutze Zulu von Azul. Da kannst du dann den ganzen Mist von Oracle deinstallieren und nur das installieren. Die 8er Version würde ich auch empfehlen. Falls du auch javaFX nutzen willst, dann ist das ein separater Download von openjdk incl. openjfx.


----------



## Jimmy_Farmer (13. Mai 2019)

verzeih meine Ahnungslosigkeit bitte,
kann ich mit Zulu das gleiche anstellen? Zumal ich nach der Anleitung im Buch vorgehen möchte. Oder gibt es ein besseres Buch dazu?


----------



## mihe7 (13. Mai 2019)

Jimmy_Farmer hat gesagt.:


> kann ich mit Zulu das gleiche anstellen?


Ja, Du kannst eine x-beliebige Java-Implementierung nehmen. 

Das JDK von Oracle in der Version 11 ist im Grunde nichts anderes als das OpenJDK 11 + Support. Davor haben sich die Versionen stärker unterschieden, so hat das Oracle JDK 8 z. B. JavaFX enthalten, das OpenJDK 8 dagegen nicht. Außerdem waren kommerzielle Features im Oracle JDK enthalten, die man freischalten konnte (was man im produktiven Umfeld nur mit entsprechender Lizenz durfte). 

Kurz: nimm ein x-beliebiges JDK (neben Zulu gibt es zig andere Anbieter, z. B. von https://adoptopenjdk.net/ oder ich hab hier eines von BellSoft laufen. Basiert alles auf OpenJDK.


----------



## Jimmy_Farmer (14. Mai 2019)

Herzlichen Dank für Eure Hilfe.
Mit dem richtigen Programm(OpenJDK 8), hat es innerhalb kürzester Zeit funktioniert.


----------

