Java est différent de la plupart des paquets LFS et BLFS. C'est un langage de programmation qui fonctionne avec des fichiers de code binaires pour obtenir les instructions et les exécuter ensuite dans une machine virtuelle Java (JVM). Un exemple de programme java ressemble à :
public class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Hello, World");
}
}
Ce programme est enregistré en tant que HelloWorld.java
. Le nom du fichier, HelloWorld, doit correspondre au nom de
la classe. Il est ensuite convertit en code binaire avec
javac
HelloWorld.java. Le fichier de sortie est
HelloWorld.class
. Le programme est
exécuté avec java
HelloWorld. Cela crée une JVM et lance le code.
L'extension « class » ne doit pas être spécifiée.
Plusieurs fichiers class peuvent être combiné en un seul fichier avec la commande jar. C'est similaire à la commande standard tar. Par exemple, la commande jar cf myjar.jar *.class combinera tous les fichiers de classes d'un répertoire dans un seul fichier. Ce qui fait des fichiers de bibliothèque.
La JVM peut chercher et utiliser les classes des fichiers jar
automatiquement. Il utilise la variable d'environnement
CLASSPATH
pour chercher les fichiers
jar. C'est une liste standard de noms de répertoires séparés par
des deux-points comme la variable d'environnement PATH
.
La création d'une JVM depuis les sources demande un ensemble de dépendances circulaires. La première chose nécessaire est un ensemble de programmes appelé Java Development Kit (JDK). Cet ensemble de programmes inclus java, javac, jar, et plusieurs autres. Il inclut également plusieurs fichiers jar de base.
Pour commencer, nous initialisons une installation binaire de JDK
créée par les auteurs de BLFS. Elle est installée dans le
répertoire /opt
pour permettre
plusieurs installations, en incluant une version basée sur les
sources.
This package is known to build and work properly using an LFS 12.1 platform.
Téléchargement du binaire (x86) : https://anduin.linuxfromscratch.org/BLFS/OpenJDK/OpenJDK-21.0.2/OpenJDK-21.0.2+13-i686-bin.tar.xz
Somme de contrôle MD5 : a08524784f41d0ccb80c1484b99bde3a
Taille du téléchargement (binaire) : 161 Mo
Estimation de l'espace disque requis : 314 Mo
Téléchargement du binaire (x86_64) : https://anduin.linuxfromscratch.org/BLFS/OpenJDK/OpenJDK-21.0.2/OpenJDK-21.0.2+13-x86_64-bin.tar.xz
Somme de contrôle MD5 : ff5cab3d4e6c571996911a6cd47023eb
Taille du téléchargement (binaire) : 169 Mo
Estimation de l'espace disque requis : 343 Mo
alsa-lib-1.2.11, Cups-2.4.7, giflib-5.2.1 et Bibliothèques Xorg
Commencez par extraire l'archive du binaire approprié pour votre
architecture et allez dans le répertoire extrait. Installez le
binaire OpenJDK avec les commandes
suivantes en tant qu'utilisateur root
:
install -vdm755 /opt/OpenJDK-21.0.2-bin && mv -v * /opt/OpenJDK-21.0.2-bin && chown -R root:root /opt/OpenJDK-21.0.2-bin
La version binaire est maintenant installée. Vous pouvez créer un
lien symbolique vers cette version en tapant, en tant
qu'utilisateur root
:
ln -sfn OpenJDK-21.0.2-bin /opt/jdk
Vous pouvez maintenant construire Configuration de l'environnement Java, où les instructions considèrent que le lien précédent existe.