Installation unter Linux


 

 


Kurze Info zu dieser Anleitung:
Die Zeichen # und $, die hier am Anfang der Zeile vor einigen Befehlen stehen, gehören nicht zu den Befehlen dazu, sollten also nicht abgetippt werden. Das "#" steht dort lediglich dafür, dass der Befehl mit root-Rechten ausgeführt werden soll, das "$" steht vor Befehlen die als normaler User ausgeführt werden sollen.

Java-Installation


Java ist eine Programmiersprache und eine Laufzeitumgebung, die zuerst im Jahre 1995 von Sun Microsystems veröffentlicht wurde. Es gibt eine täglich wachsende Anzahl von Anwendungen und Websites, die nur funktionieren, wenn auf dem Endgerät Java installiert ist. Java ist schnell, sicher und zuverlässig. Und, ohne Java würde es auch kein "appleJuice" geben!

 

Linux und Java im Wandel


Openjdk 8

OracleJRE vs. OpenJDK

Jede Linux-Distributionen bringt Veränderungen mit sich, egal ob Debian direkt oder ein Ableger wie Ubuntu, Fedora oder Linux-Mint. Das gleiche trifft auch auf openSuse oder RedHat zu. In Punkto Java scheiden sich leider die Geister in der großen Linux-Gemeinde. Die einen setzen auf OpenJDK und die anderen geben Oracle JRE eine Möglichkeit des Auftritts. Das trifft leider auch für "appleJuice" zu, da diese Anwendung nur mit dem Java von Oracle wirklich funktioniert (das trifft für Windows-OS in erster Linie zu).

Ich gebe zu, ich bin auch ein Anhänger von der OracleJRE-Version, da es in meinen Augen vollkommen egal ist, beim jetzigen Stand der Systeme muss ich das JAVA abändern, ob ich will oder nicht. Alles was in der Versionshistorie größer 8 ist, funktioniert nicht mit dem Client. Eine Ausnahme gibt es nur für den AJ-Server, der seit 2013 nun auch mit "openJDK" größer 8 funktioniert.

Siehe:

Die richtige Java-Version

Beim Gebrauch von Linux spiel in unserem Fall JAVA eine entscheidende Rolle, da ohne Java kein Apfel läuft. Deshalb gibt es eine Besonderheit, die es im Moment nur unter Linux gibt. Für den Serverbetrieb können wir hier ohne Einschränkung die vorinstallierte openJDK-Version (>v.8.xx) nutzen. Es spielt also keine Rolle ob 32bit oder 64bit gerade installiert sind. Beides funktioniert! Beim Client sieht es im Moment noch etwas anders aus. Hier kann man zwar auch beide Java's einsetzen (also OpenJDK od. OracleJRE), muss aber die Versionen beachten. Der Core ist in der jetzigen Versionscodierung nur bis Version 8 nutzbar. Das heißt in meinem Beispiel unter openSuse 15.1, dort wo OpenJDK 11.01.xxx vorinstalliert ist, muss ich diese Version deaktivieren und mir entweder OpenJDK-8 oder JRE-8u2xx von Oracle laden. Entscheidend ist, dass der AJ-Client nur bis Java 8 funktioniert in der jetzigen Version!

 Beispiel für die Nach- oder Neuinstallation:

 $ sudo apt-get install openjdk-8-jre

Im Moment arbeite ich an einer Lösung für den Clienten unter Linux, damit dieser auch die vorinstallierte openJDK (>v.8.xx) nutzen kann. Damit wird der gesamte Einsatz unter Linux wesentlich einfacher und Windows könnte möglicherweise ganz aus dem Rennen genommen werden. Den ersten Schritt haben wir jedenfalls gemacht: Linux läuft jetzt im 64bit-Modus, damit braucht man kein 32bit-Java mehr zwingend bei einem 64bit OS.

 

OracleJRE and OpenJDK


Download-Methoden für beide Java-Varianten

Ubuntu, Debian, Kubuntu


Methode 1: Java Paket selber erstellen

Mit java-package könnt ihr wie bei Debian selber ein .deb Paket erstellen. Ihr müsst nur die multiverse-Quellen in der /etc/apt/sources.list aktiviert haben.

  1. Linux (selbstextrahierende Datei) von www.java.com runterladen
  2. java-package installieren und damit aus der selbstextrahierende Datei ein .deb erstellen:

$ sudo apt-get update
$ sudo apt-get install java-package fakeroot
$ fakeroot make-jpkg jre-8u231-linux-i586.rpm

 

3. Dann noch die paar Fragen beantworten, die Lizenz bestätigen und das Paket wird erstellt. Danach einfach installieren mit:

$ sudo dpkg -i oracle-jre1.8_0+update231_i586.deb

4. Jetzt nur noch das gerade installierte JRE als Java Version auswählen und verlinken.

JDK 8


Methode 2a: Java Paket für Debian, Ubuntu, Suse, Mint, etc. installieren

Folgenden Befehl in die Komandozele eingeben:

 $ sudo apt-get install openjdk-8-jre 

Das "openjdk-8-jre" Paket enthält nur die Java-Laufzeit-Komponenten, die für den AJ-Client vollkommen ausreichen. Wenn ihr mehr mit Java vorhabt, solltet ihr das "openjdk-8-jdk" Paket installieren.

 

Methode 2b: Java Paket für Fedora, Oracle Linux, Red Hat Enterprise, SuSe Enterprise Linux, etc. installieren

Folgenden Befehl in die Komandozele eingeben:

 $ su -c "yum install java-1.8.0-openjdk" 

Das "java-1.8.0-openjdk" Paket enthält nur die Java-Laufzeit-Komponenten, die für den AJ-Client vollkommen ausreichen. Wenn ihr mehr mit Java vorhabt, solltet ihr das "java-1.8.0-openjdk-devel" Paket installieren.

 

Methode 3: Mitgeliefertes Java installieren

Seit Ubuntu 9.04 (Dapper Drake) ist das JRE von Oracle im multiverse zu finden. Falls das in der /etc/apt/sources.list aktiviert ist, kann es also direkt installiert werden:

$ sudo apt-get install oracle-java8-jre

Auch hier muss das gerade installierte JRE noch als Java Version ausgewählt werden.

Java Version auswählen


Nun könnt ihr noch diejenige Java Version auswählen, die Standardmäßig benutzt werden soll:

$ sudo update-alternatives --config java

und dann einfach die Zahl eintippen, die neben der JRE-Version steht und mit Enter bestätigen.

 

Fedora, SuSE, etc. (RPM)


Für Distributionen die rpm benutzten gibts auch direkt von Oracle ein Paket, zu finden auf www.java.com als Linux RPM (selbstextrahierende Datei).

 

Dieses muss nur mit root-Rechten ausgeführt werden und installiert sich nach akzeptieren der Lizenzbedingungen automatisch:

$ su
**root passwort**
# chmod +x jre-jre-8u231-linux-i586.rpm
# ./jre-8u231-linux-i586.rpm

Der Link in /usr/bin/ muss aber noch von Hand gesetzt werden:

# ln -sf /usr/java/jre-8u231/bin/java /usr/bin/java

 

Sonstige Distributionen / Manuelle Installation


Die Installation einer *.rpm Datei von Oracle sollte auf jedem System funktionieren. Siehe Installation unter Linux.

 

Anmerkung vom Autor


Eine Anmerkung/Änderung an dieser Stelle, da ich gespannt bin ob es User gibt, die diesen Artikel bis zum Schluss lesen!
Seit Dezember'19 ist es egal welche Java installiert wird auf dem System, man kann also OpenJDK oder OracleJRE bis zur v8 nutzen. Obwohl es nicht ganz richtig ist. Auf einem 32bit-Linux kann man natürlich auch nur 32bit-Anwendungen installieren.
Also für alle 64bit-Linux-Anwender: "Der Core läuft jetzt auch unter Java 64bit auf eurem System." Notwendig ist dazu natürlich eine 64bit-libajnetmask.so und eine 64bit-Java!

 

Oracle Java auf dem Raspberry Pi


Dank Android gibt es Millionen von Smartphones die Java verwenden. Gleichzeitig wird jeder Blu-ray Player der Welt mit Java ausgeliefert. Letzten Endes steht Java auch für den Raspberry Pi zur Verfügung und hat Einzug in das Repository der Rasperry Pi Foundation gefunden.
raspberry pi console

Die Kompatibilität zu Oracle Java bedeutet eine bessere Performance gegenüber dem bereits vorhandenen OpenJDK. Auf Raspian-Images ist nun Oracle Java vorinstalliert, alternativ kann das Programmpaket auch über die Kommandozeile nachinstalliert werden.

Der einfachste Weg um Java auf dem Raspberry zu installieren ist folgender Befehl:

$ sudo apt-get update && sudo apt-get install oracle-java8-jdk

Alternative Installation

Sollte dies, aus welchen Gründen auch immer, nicht funktionieren, steht noch die manuelle Installation zur Verfügung.

Zuerst empfiehlt es sich, ein Update auszuführen und neuzustarten.

$ sudo apt-get update && sudo apt-get upgrade && sudo apt-get clean
$ sudo rpi-update
$ sudo reboot

Download

Zunächst lädt man sich das Java 8 JDK „Hard Float ABI“ für ARM-Prozessoren (jdk-8u241-linux-arm32-vfp-hflt.tar.gz) von hier herunter (Anmeldung notwendig).

Mittels SCP kopiert man nun die heruntergelade Datei auf den Raspberry.

$ scp jdk-8u241-linux-arm32-vfp-hflt.tar.gz root@192.0.0.0:/root

Alternativ dazu bietet es sich an, die Datei mittels WinSCP einfach per Drag & Drop auf den Raspberry zu kopieren.

Wenn der RPi eine Verbindung zum Internet hat kann man die Datei hier laden.

Danach wechselt man auf den Raspberry und entpackt das kopierte Archiv nach /opt.

$ sudo tar xvzf jdk-8u241-linux-arm32-vfp-hflt.tar.gz -C /opt

Installation

Nun kann Java aktiviert werden. Nach Ausführung der folgenden Befehle wählt man jeweils die Installation im /opt Verzeichnis aus:

 

$ sudo update-alternatives --install /usr/bin/javac javac /opt/jdk1.8.0_241/bin/javac 1

$ sudo update-alternatives --install /usr/bin/java java /opt/jdk1.8.0_0_241/bin/java 1

 

Nun nur noch der letzte Befehl:

$ sudo update-alternatives --config java

$ sudo update-alternatives --config javac

Java 8 wurde erfolgreich auf dem Raspberry Pi installiert und konfiguriert.

Das zuvor heruntergeladene Archiv von Java kann nun gelöscht werden.

$ rm jdk-8u241-linux-arm32-vfp-hflt.tar.gz

 

Nun kann noch kontrolliert werden, ob die Installation wirklich geklappt hat:

 

$ java -version

$ javac -version

jdk180 241Die Ausgabe von Version 1.8 bestätigt dass Java 8 erfolgreich installiert wurde.

Eine Sache bleibt noch zum Schluss. Da wir ja "appleJuice" betreiben wollen, müssen wir uns noch einige Dateien aus dem Download-Bereich laden.
Zum Betreiben des AJ-Client benötigen wir:

ajcore-149.jar

libajnetmask-armhf.so

AJCoreGUI_v0_71_2_Fassade_1_23.zip

Die Datei "libajnetmask-armhf.so" muss nach dem Download umbenannt werden in "libajnetmask.so" und in das Verzeichnis /usr/lib/ verschoben od. kopiert werden.

Die anderen Dateien kann man in ein Verzeichnis seiner Wahl unterbringen. Core und GUI sollten aber getrennt werden, damit man den Überblick behält. Beim ersten Start vom Core werden automatisch alle fehlenden Verzeichnisse und Dateien erzeugt (die man im Anschluß noch per Hand anpassen kann).

$ mv libajnetmask.so /usr/lib/

ajcore erst startajcoregui erst start

 

Es gibt zahlreiche Anleitungen im Internet, wie die neuste Oracle-Java-Version manuell auf den RPi gebracht werden kann. Doch das finde ich zu aufwändig, denn bei jedem Update muss man wieder selbst Hand anlegen.
Das hat zwar nicht unmittelbar etwas mit dem Betrieb von "appleJuice" zu tun, doch es ist wichtig die Software auf einen aktuellen Stand zu halten.
Deshalb werde ich erklären, wie man ein Oracle-Java per PPA (apt-get) auf den neusten Stand bringt und keinen Stress mehr damit hat. Bei dieser Anleitung wurde ich von der Webseite "linuxbabe.com" inspiriert und sage Danke für diesen super Ansatz.

 

zur Zusatzseite

 

 

 

 

 

 

 

 

Quellennachweis:

(Texte mit Fremd-Copyright sind nur verlinkt)