Versionen (bin verwirrt)

Lucas-Kane

Mitglied
Hallo,

ich habe gerade angefangen, nach langer zeit (5 Jahre) mal wieder Java zu programmieren. Ich bin jetzt maximal verwirrt. Ich habe JDK 14. Wenn ich damit ein Programm kompiliere und es ausführen will, bekomme ich einen Fehler "A JNI error has occured...". Ich habe etwas nachgelesen und herausgefunden, dass die Version, mit der ich kompiliere nicht mit der Version von Java auf meinem Rechner zusammenpasst. Jetzt habe ich nochmal nachgeschaut. Soweit mir bekannt ist, kann man nur Java 8 herunterladen. Warum gibt es dann JDK 14?

Zusatzinfo: Ich nutze openjdk, da das "echte" jdk ja jetzt geld kostet, wenn man damit kommerziell entwickeln will.
 
ich habe gerade angefangen, nach langer zeit (5 Jahre) mal wieder Java zu programmieren. Ich bin jetzt maximal verwirrt. Ich habe JDK 14. [...] Jetzt habe ich nochmal nachgeschaut. Soweit mir bekannt ist, kann man nur Java 8 herunterladen. Warum gibt es dann JDK 14?
Java 14 ist das aktuellste, Java 11 ist die letzte LTS-Variante, und Java 8 ist noch weit verbreitet. Nutzen kannst du theoretisch alle drei Versionen, manche Programme laufen allerdings nur mit bestimmten Versionen.



Wenn ich damit ein Programm kompiliere und es ausführen will, bekomme ich einen Fehler "A JNI error has occured...". Ich habe etwas nachgelesen und herausgefunden, dass die Version, mit der ich kompiliere nicht mit der Version von Java auf meinem Rechner zusammenpasst.
Zum Ausführen muss man immer die gleiche oder eine neuere Version nutzen, als für die kompiliert wurde.
* FürJava 8 kompiliert- > läuft auf 8, 11, 14, 15, ...
* Für Java 11 kompiliert- > läuft auf 11, 14, 15, ...
* Für Java 14 kompiliert- > läuft auf 14, 15, ...

Welche Versionen hast du denn installiert? Wenn du JDK 14 hast, kannst du damit sowohl kompilieren als auch ausführen.

Zusatzinfo: Ich nutze openjdk, da das "echte" jdk ja jetzt geld kostet, wenn man damit kommerziell entwickeln will.
Nein. OpenJDK ist "das Echte" JDK, und auch mit dem Oracle-JDK kann man noch kostenlos entwickeln.
 
Erstmal danke für die Antwort.

Wie gesagt habe ich jdk 14, es gibt (soweit ich es jetzt herausgefunden habe) nur jre 8 zum herunterladen für den pc. Das ist ja was ich nicht verstehe. Ich krige online nur jre8, aber es gibt jdk 14. Irgendwo habe ich einen Denkfehler, kann aber gerade nicht herausfinden, wo.

Nein. OpenJDK ist "das Echte" JDK, und auch mit dem Oracle-JDK kann man noch kostenlos entwickeln.
Das ist schonmal super zu wissen.
 
Das JDK enthält auch die JRE.
Die JRE wird von einigen Anbietern nur eben nicht mehr einzelnd angeboten. Aber mit dem JDK hast du es ja schon dabei.
 
Also mit Java 9 ist JLink eingeführt worden. Damit erstellt man Laufzeit Images mit genau den Modulen, die benötigt werden.
Mit Java 14 ist dann JPackage dazu gekommen. Damit kann man dann sogar ausführbare Binaries erstellen.

Also ja: Es gibt entsprechende Möglichkeiten (Die wohl auch der Grund waren, warum das JRE als Download entfallen ist).

Aber Du kannst z.B. bei adoptopenjdk.net auch immer noch JREs herunter laden. wenn also diese neuen Wege nicht zusagen, dann kann man auch darauf verweisen.
 

Zurück
Oben