Seit Januar 2019 muss für den Kommerziellen Einsatz von Oracle JDK Lizenzkosten an Oracle abgeführt werden. Schaut man sich die Lizenzkosten an, kann es sehr schnell teuer werden.

In diesem Beitrag will ich erklären, wie man die Alternative für das Oracle JDK, Open JDK in einem Windows Betriebssystem einrichtet. Als erstes sollte man das Openjdk hier herunterladen. Wähle dann die jeweilige JDK Version aus. Die derzeitige(Januar 2019) Default Version sollte das JDK 1.8 oder das JDK 11 sein. Da es keinen üblichen Windows installer gibt, reicht es die passende zip Datei herunter zu laden und das JDK in ein Verzeichniss zu entpacken. Im üblichen Fall unter C:\Program Files\Java . Dort erstellt Ihr euch ein Verzeichnis z.B, openJdk8. Dort werden nun alle Dateien entpackt. Damit Ihr das Java auch zukünftig für eure Java Programme verwenden könnt, müsst Ihr es auch dem System bekannt machen. Das geschieht durch die Systemvariablen JAVA_HOME und der Variable PATH.

Die Beeinflussung diese Variablen könnt Ihr unter Systemsteuerung -> System->Erweiterte Systemeinstellungen->Umgebungsvariablen vornehmen. Das dort erscheinende Fenster teilt sich in Benutzervariablen und Systemvariablen auf. Die PATH Variable ist eine Benutzervariable. Die JAVA_HOME ist eine Systemvariable. Sollte es keine Systemvariable JAVA_HOME geben, müsst Ihr Sie mit dem Button Neu anlegen. Achtet auf die korrekte Schreibweise alle Buchstaben müssen großgeschrieben werden und der Unterstrich zwischen A und H. Als Wert der Variable gebt Ihr das Verzeichnis an, das Ihr oben erstellt habt; in dem Ihr die heruntergeladene JDK zip Datei entpackt habt. Das wars.

Desweiteren solltet Ihr die PATH Varaible für den Benutzer auch auf das jdk bin Verzeichnis zeigen lassen. Dafür schaut euch genau die Syntax des Wertes der Variable an, dort sind im Normalfall schon andere Programme eingetragen und sorgen dafür das diese während der Windows Sitzung auch gefunden werden. Der Eintrag könnte folgendemaßen aussehen:

C:\Users\Franz\AppData\Local\Microsoft\WindowsApps;%USERPROFILE%\AppData\Local\Microsoft\WindowsApps;C:\Program Files\Java\openJDK8\bin;C:\Users\Franz\AppData\Local\GitHubDesktop\bin;

Die einzelnen Programmpfade sind immer durch ein Semikolon getrennt. Das bei mir noch ein GitHubDesktop auftaucht ist meine Individuelle Umgebung. Das hat für den korrekten Einsatz von Java keine Bedeutung. Damit Ihr auch seht das die Einstellungen erfolgreich waren, macht Ihr anschließend ein Kommandozeilen Fenster auf, mit Start-> cmd und tippt dort java -version ein.

Wenn dort eine Fehlermeldung auftaucht, überprüft die Einstellungen noch einmal. Solltet Ihr den Fehler gefunden haben, müsst Ihr ein neues Kommandozeilen Fenster öffnen, da das alte Fenster die Änderungen die Ihr in den Umgebungsvariablen macht, erst mitbekommt wenn es neu initialisiert wird. Natürlich könnt Ihr auch mehrere JDK auf eurem System installieren, aber nur das was in den Systemvariablen eingetragen ist, ist das Default für dein Windows. Ich zeige es auch in meinem YouTube Video unten.

Zusammenfassung

  1. open JDK herunter laden bei https://jdk.java.net/
  2. alternativ bei Amazon Coretto auch als Zip datei erhältlich
  3. in einem Verzeichnis entpacken z. B. C:\Program Files\Java\openJdk8
  4. Umgebungsvariablen PATH und JAVA_HOME setzen
  5. Kommandozeilen Fenster aufmachen und mit java -version testen.

Video

Ich hab das auch alles nocheinmal im folgenden Video zusammengefasst:

Es können durchaus Fehler entstehen, z.B. wenn eine vorherige Oracle JDK Installation nicht richtig deinstalliert wurde. Also achtet darauf, das das Oracle JDK erst einmal deinstalliert wird und anschließend überprüft euer Windows Verzeichnis ob dort noch eine javaw.exe irgendwo existiert. In einem 64 Bit Windows das Verzeichnis C:\Windows\SysWOW64 und in einem 32 Bit Windows im Verzeichnis C:\Windows\System32 nach dieser Datei suchen und diese dann löschen. Außerdem auch nachschauen ob es einen Ordner unterhalb des Verzeichnis C:\ProgramData existiert der den Namen Oracle trägt. Dieser Ordner auch händisch löschen, das sind Übrigbleibsel der Oracle Deinstallation. Danach sollte es funktionieren.

Viel Spaß

Kategorien: Allgemein

11 Kommentare

Thilo Michels · 26. Juni 2019 um 11:25

Moin,
Ich habe alle Schritte befolgt. Eine javaw.exe habe ich nicht gefunden, aber das Oracle-Verzeichnis händisch gelöscht. mit java -version wird mir die korrekte Version angezeigt. Ich habe sogar die aktuellere Version 12.0.1 gegen deine hier beschriebene 18.9 ausgetauscht. Der IE denkt immer noch, es sei kein Java installiert. Was mache ich falsch?

    Franz-Martin · 26. Juni 2019 um 12:47

    Hallo Thilo,
    zum ersten würde mich interessieren was du mit dem IE(Internet Explorer) und Java machen wilst?
    Die o a. Installationshilfe ist nur für reine Java Programme oder für die Entwicklung gedacht, als zum Programmieren.

    Jetzt fange ich an zu vermuten.
    Solltest du auf ein Java Programm stoßen, was zum Beispiel uber einen Browser aufgerufen wird, dann must du im Internet Explorer oder anderen Browser
    Java noch einrichten. Solche Programme(Applets) sind aber sehr selten anzutreffen, bzw. sie sind veraltet.
    Diese Technik wird aus Sicherheitsgründen von den Browsern nicht mehr oder nur teilweise unterstützt.

    Also das beste ist um ein Lösung zu finden, das du mir sagst was du mit Java machen willst.

    Gruß
    Franz

Sascha Kunimünch · 28. Juni 2019 um 11:50

Hallo Franz,
danke für deine Anleitung. Aber auch ich frage mich, wie nun das Java im IE verwendet werden kann. Wir haben hier noch eine SAP CRM Version, welche mit Java läuft. Kann ich dann überhaupt OpenJava verwenden?
Danke und Gruss, Sascha

    Sascha Kunimünch · 28. Juni 2019 um 14:46

    Hat sich erledigt. Funktioniert mit unserer CRM Version nicht 🙂

    Franz-Martin · 1. Juli 2019 um 12:35

    Hallo Sascha,
    wenn tatsächlich Java Applets verwendet werden gibt es die theoretische Möglichkeit(Ich habe Sie nocht nicht getestet) ein Java vm mit 32bit zu installieren und die soll laut folgender Webseite
    https://coderanch.com/t/681963/java/Applets-Working-bit-bit-JRE dann auch funktionieren. Aber wie schon vorher gesagt, es ist nicht mehr üblich mit Java Applets zu arbeiten, wegen Sicherheits bedenken.

    Gruß und viel Spaß beim entwickeln
    Franz-Martin

Maik · 17. Oktober 2019 um 9:59

Kann man nicht einfach eine ältere Java-Version (JDK) meiner Anwendung beilegen. Also ich meine eine Version vor der Lizenzänderung.
Wenn ich dann explizit diese Version aufrufe sollten die Lizenzbedingungen doch (noch) passen, oder?

    Franz-Martin · 17. Oktober 2019 um 12:52

    Hallo Maik,
    prinzipiell schon, aber du ignorierst dabei das Sicherheitsproblem. Es gibt für ältere JDK/JRE keine Sicherheitsupdates mehr.
    Wenn du mal in google nach Sicherheitslücken bei JDK 7 oder JDK 6 nachschaust, wirst du für das Sicherheitsproblem ein wenig sensibilisiert.

    Ich nehme seit Februar 2019 Coretto von Amazon, Amazon garantiert noch Sicherheitspatches bis 2025.

    Es gibt noch ein anderes Problem, wenn due Java EE machst benötigst du einen Applicationserver, der wiederum ein JDK mit mindestversion benötigt.
    In den meisten fällen ist das zur Zeit JDK 8.

    Gruß
    Franz

RedNax · 12. November 2019 um 13:35

Hallo und danke für die Anleitung. Stehe auch vor dem Problem der Umstellung, allerdings auf Kundenrechnern. Vorher haben wir für unsere auf Java basierende Anwendung JRE mit verteilt. JRE ist ja auch betroffen so wie ich das verstanden habe. Jetzt soll also OpenJDK mit verteilt werden.
Du hast das soweit alles schön verständlich erklärt! Nur eine Frage stelle ich mir:
Du sagst, dass das JDK deinstalliert werden muss. Das bedeutet für mich, dass das JRE deinstalliert werden muss. Eine Koexistenz von JRE und OpenJDK ist wohl kaum möglich wenn ich mir die Anleitung so anschaue, denn Umgebungsvariable, EXE-Name etc. ist ja identisch.
Ich sehe hier aber ein Problem, denn ich kann ja nicht einfach das JRE auf Kundenrechnern entfernen. Andere Anwendungen greifen ggf. auch darauf zu. Spricht nix dagegen das JRE einfach gegen OpenJDK auszutauschen. Oder sind Seiteneffekte zu erwarten.

    Franz-Martin · 13. November 2019 um 19:22

    Hallo Alexander,
    vielen Dank für die Rückmeldung. Das ich das alte JDK/JRE immer empfele zu entfernen, mach ich aus Hygienegründen. Alles was man nicht benötigt kommt weg(wird deinstalliert).
    Beim openJdk habe ich bis jetzt keine Effekte erlebt. Wenn du welche erlebst bitte posten.

    Gruß
    Franz

René · 17. November 2019 um 10:09

Hi Franz,

danke für die einfache Anleitung. 🙂

Gruß
René

Hinweis: Man kann auch die Systemvariable PATH nutzen, so macht(e) Oracle das.

    Franz-Martin · 19. November 2019 um 12:47

    Hallo Rene,

    das mit der PATH Anweisung ist mir auch bekannt, aber man stößt dort relativ schnell an die maximal Eintragslänge der PATH Umgebungsvariable. Seit Windowws 10 kann mann diese zwar anpassen, aber es ist eine zusätzliche Hürde.

    Gruß
    Franz

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.