Configuration de l'environnement Java

Configuration de l'environnement

Après que l'installation des paquets est terminée, l'étape suivante est d'être certain que le système peut trouver proprement les fichiers. Si vous initialisé vos scripts de login comme recommandé dans Les fichiers de démarrage du shell Bash, mettez à jour l'environnement en créant le script openjdk.sh, en tant qu'utilisateur root :

cat > /etc/profile.d/openjdk.sh << "EOF"
# Begin /etc/profile.d/openjdk.sh

# Set JAVA_HOME directory
JAVA_HOME=/opt/jdk

# Adjust PATH
pathappend $JAVA_HOME/bin

# Auto Java CLASSPATH: Copy jar files to, or create symlinks in, the
# /usr/share/java directory.

AUTO_CLASSPATH_DIR=/usr/share/java

pathprepend . CLASSPATH

for dir in `find ${AUTO_CLASSPATH_DIR} -type d 2>/dev/null`; do
    pathappend $dir CLASSPATH
done

for jar in `find ${AUTO_CLASSPATH_DIR} -name "*.jar" 2>/dev/null`; do
    pathappend $jar CLASSPATH
done

export JAVA_HOME

# By default, Java creates several files in a directory named
# /tmp/hsperfdata_[username]. This directory contains files that are used for
# performance monitoring and profiling, but aren't normally needed on a BLFS
# system. This environment variable disables that feature.
_JAVA_OPTIONS="-XX:-UsePerfData"

export _JAVA_OPTIONS

unset AUTO_CLASSPATH_DIR dir jar _JAVA_OPTIONS

# End /etc/profile.d/openjdk.sh
EOF

Si vous avez installé Sudo-1.9.15p5, le super utilisateur devrait avoir accès aux variables sus-mentionnées. Exécutez les commandes suivantes en tant qu'utilisateur root :

cat > /etc/sudoers.d/java << "EOF"
Defaults env_keep += JAVA_HOME
Defaults env_keep += CLASSPATH
Defaults env_keep += _JAVA_OPTIONS
EOF

Pour permettre à mandb d'inclure les pages de manuel d'OpenJDK dans sa base de données, lancez en tant qu'utilisateur root  :

cat >> /etc/man_db.conf << "EOF" &&
# Début des suppléments Java
MANDATORY_MANPATH     /opt/jdk/man
MANPATH_MAP           /opt/jdk/bin     /opt/jdk/man
MANDB_MAP             /opt/jdk/man     /var/cache/man/jdk
# Fin des suppléments Java
EOF

mkdir -p /var/cache/man &&
mandb -c /opt/jdk/man

Configuration des certificats d'autorités de certification pour Java

OpenJDK utilise son propre format pour les certificats de CA. Les modules de sécurité de Java utilisent $JAVA_HOME/lib/security/cacerts par défaut. Pour garder les certificats à un seul endroit, nous utilisons /etc/ssl/java/cacerts. Les instruction de la page make-ca-1.14 ont créé le fichier situé dans /etc/ssl/java. Installez un lien symbolique à l'emplacement par défaut en tant qu'utilisateur root :

ln -sfv /etc/pki/tls/java/cacerts /opt/jdk/lib/security/cacerts

Utilisez les commandes suivantes pour vérifier si le fichier cacerts a bien été installé :

/opt/jdk/bin/keytool -list -cacerts

Lorsqu'on vous demande Enter keystore password:, entrez changeit (la valeur par défaut) ou appuyez simplement sur « entrée ». Si le fichier cacerts est correctement installé, vous verrez une liste des certificats avec les informations relatives à chacun. Sinon, vous devez les réinstaller.

Si vous installez plus tard une nouvelle JVM, vous devrez seulement créer le lien symbolique à l'emplacement par défaut pour pouvoir utiliser les cacerts.