Ceci est une ancienne révision du document !
Java, Open JDK
Présentation
Défini à l'origine comme un langage, Java a évolué au cours du temps pour devenir une technologie, qui intègre une bibliothèque complète pour exécuter ou développer une multitude d'applications. La particularité principale de Java est que les applications écrites dans ce langage sont très facilement portables sur plusieurs systèmes d’exploitation tels que UNIX, Windows, Mac OS ou GNU/Linux, avec peu ou pas de modifications. C’est la plate-forme qui garantit la portabilité des applications développées en Java.
La technologie Java regroupe aujourd'hui :
- La plate-forme d'exécution JRE des programmes écrits dans ce langage ( Environnement d'exécution Java ).
- la plate-forme de développement JDK (Kit de développement Java ).
- le greffon permettant d'exécuter des programmes spéciaux écrits dans ce langage pour les navigateurs internet.
Le tout forme un ensemble cohérent quoique modulaire, et selon vos besoins, vous installerez certains composants et pas d'autres. Dans la plupart des cas et si vous ne souhaitez pas développer en Java, l'installation de la plate-forme d'exécution des programmes JRE et de le greffon pour les navigateurs internet suffisent.
Pré-requis
- Disposer des droits d'administration.
- Disposer d'une connexion à Internet configurée et activée.
Installation OpenJDK
Java ne pouvait être considéré comme un logiciel libre selon les critères de la Fondation du logiciel libre car les bibliothèques de base de Java ainsi que son compilateur étaient non-libres. OpenJDK est l'implémentation libre de la société Oracle du standard Java sous Licence Publique Générale. Son utilisation est donc à recommander pour respecter la philosophie du logiciel libre.
Pour installer la plate-forme d'exécution JRE d'OpenJDK, il suffit d'installer les paquets openjdk-7-jre et son greffon pour les navigateurs internet : icedtea-7-plugin.
Dans un terminal, saisir la commande suivante :
sudo apt-get install openjdk-7-jre icedtea-7-plugin

Redémarrez votre navigateur internet, et voilà, ça marche.
Utilisation
Pour une utilisation basique, il n'y a pas de manipulation particulière à faire. Une fois installée, la plate-forme d’exécution Java est lancée au démarrage d'Ubuntu. Le Greffon est automatiquement exécuté lors du lancement du navigateur internet.
Exécuter un fichier JAR
Certaines applications Java sont distribuées sous forme de <NomDuFichier>.jar
exécutable. Un fichier .jar
n'est rien d'autre qu'une archive (comme un .zip
) contenant l'ensemble des fichiers nécessaires à l'exécution du programme.
META-INF/MANIFEST.MF
une ligne contient :
Main-Class: <lenomdupackage>.<LeNomDeLaClassePrincipale>
(en adaptant le nom de la classe principale).
En ligne de commandes
Par un double-clic
Il suffit d'associer les fichiers .jar
à la Machine Virtuelle Java. Pour cela, faites un clic droit sur un fichier .jar
, choisissez Propriétés et allez dans l'onglet Ouvrir avec. Il ne reste plus qu'à sélectionner la plate-forme d'exécution Java :
Si une telle option n'est pas disponible, cliquez sur le bouton Ajouter, dépliez dans le bas de la fenêtre la section Utiliser une commande personnalisée, et entrez le code :
java -jar
puis validez. Ensuite, sélectionnez Java dans la liste des applications.
Connaître la version de Java utilisée par défaut
Pour connaître la version de la plate-forme d'exécution Java, saisissez dans un terminal la commande suivante :
java -version
Pour connaître la version de la plate-forme de développement (si vous avez installé un JDK) :
javac -version
Changer la version de Java utilisée par défaut
De manière interactive
Saisissez dans un terminal la commande suivante :
sudo update-alternatives --config java
Ceci va lister la liste des versions disponibles, et vous n'aurez plus qu'à choisir le numéro de celle que vous souhaitez utiliser par défaut. Et pour Java Web Start, saisir :
sudo update-alternatives --config javaws
De manière non-interactive
Vous pouvez sélectionner la version de Java désirée (ici OpenJDK) en saisissant dans un terminal la commande suivante :
sudo update-java-alternatives -s java-7-openjdk
Pour obtenir la liste des versions disponibles, Saisir dans un terminal la commande suivante :
update-java-alternatives -l
Ajouter la variable JAVA_HOME à votre système
Expliquer son utilité
ancien et pour Sun, mais est-ce toujours valable pour Oracle ?
jdk SUN
Saisissez dans un terminal:
sudo bash -c "echo JAVA_HOME=/usr/lib/jvm/java-7-sun/ >> /etc/environment"
openjdk
Saisissez dans un terminal: 32 bits :
sudo bash -c "echo JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk/ >> /etc/environment"
64 bits :
sudo bash -c "echo JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-amd64/ >> /etc/environment"
Vérifiez qu'il n'y a pas de doublons, en éditant le fichier /etc/environment
Installations alternatives
Depuis le PPA
Ce PPA permet d'installer la version Java du site officiel d'Oracle d'une manière simple et de le maintenir à jour. Il installera la totalité des composants.
- Ajouter le PPA webupd8team/java1) dans vos sources de logiciels;
Ou dans un terminal, saisir les commandes suivantes :
sudo add-apt-repository ppa: webupd8team/java sudo apt-get update sudo apt-get install oracle-java7-installer
Puis accepter la licence d'utilisation d'Oracle.
Manuelle
De plus, actuellement il n'y a pas de ".Deb" disponible pour Oracle Java 7. Seuls Les binaires brutes (sans installation) sont présents sur le site d'Oracle.
Installation du JRE
jre-7u40-linux-i586.tar.gz
(Paquet pour les architectures Ubuntu 32 bits ) téléchargé dans le dossier Téléchargements de votre dossier personnel. ((en) Source). A vous d'adapter si besoin.
Se rendre sur la page de téléchargement du site officiel Oracle, accepter la licence d'utilisation et télécharger le fichier jre-7u40-linux-i586.tar.gz
.
L'installation se fera en lignes de commandes via un terminal avec les droits d'administration.
- Créer un nouveau sous-dossier Dans le dossier /opt
sudo mkdir -p -v /opt/java/32
- Se rendre dans le dossier Téléchargements et décompresser le fichier jre-7u40-linux-i586.tar.gz compressé que vous venez de télécharger
cd Téléchargements && tar xvzf ~/Téléchargements/jre-7u40-linux-i586.tar.gz
- Déplacer les éléments décompressés du fichier jre-7u40-linux-i586.tar.gz dans le dossier système que vous avez créé à l'étape 1
sudo mv -v ~/Téléchargements/jre1.7.0_40 /opt/java/32
- Informer le système de la nouvelle version de JavaJRE
sudo update-alternatives --install "/usr/bin/java" "java" "/opt/java/32/jre1.7.0_40/bin/java" 1
- Rendre son utilisation par défaut
sudo update-alternatives --set java /opt/java/32/jre1.7.0_40/bin/java
Ne fermez pas le terminal, il faut aussi installer le plugin pour Firefox.
Installation du greffon Firefox
Toujours en lignes de commande dans un terminal :
- Créer un dossier pour le greffon (Si il éxiste déjà, une notification vous en informera).
mkdir -v ~/.mozilla/plugins
- Enlever le greffon IcedTea, si il a été installée
sudo apt-get remove icedtea-6-plugin && sudo apt-get remove icedtea-7-plugin
- Supprimer l'ancienne version du greffon Java.
rm -v ~/.mozilla/plugins/libnpjp2.so
- Si il n’existe pas, une notification vous en informera.
- Nous allons installer le nouveau greffon en créant un lien symbolique pour indiquer à Firefox où se trouve le greffon.
ln -s /opt/java/32/jre1.7.0_40/lib/i386/libnpjp2.so ~/.mozilla/plugins/
Contrôle final
- Fermer et relancer Firefox.
- Tapez dans la barre d'adresse de Firefox : about: plugins
- Appuyez sur Entrée, et faites défiler vers le bas jusqu'à ce que vous voyez quelque chose à peu près semblable à ceci: Java (TM) Plug-in 1.7.0_40
Développer en Java
Pour pouvoir développer en Java, en plus de la plate-forme d’exécution Java disponible dans le paquet JRE, il est indispensable d'avoir la plate-forme de développement Java avec les outils supplémentaires, disponibles dans les paquets JDK (Java Developpement Kit).
Installation OpenJDK
Pour installer la plate-forme de développement JDK d'OpenJDK, il suffit d'installer les paquet openjdk-7-jdk. Dans un terminal, saisir la commande suivante :
sudo apt-get install openjdk-7-jdk
Installations alternatives
Depuis le PPA
Si vous avez déjà installé Java d'Oracle via le PPA webupd8, il n'y a rien à faire. L'installateur a déjà installé la plate-forme de développement JDK.
Depuis le site officiel
La procédure d'installation manuelle est identique au paragraphe installation du JRE depuis le site officiel. Il suffit simplement de télécharger sur le site d'Oracle le paquet JDK au lieu du JRE et de remplacer jre par jdk dans les syntaxes des lignes de commandes du terminal.
Versions précédentes
Les procédures d'installation ci-dessus (JRE, greffons, et JDK) concernent les version 7, dernières versions stables d'OpenJDK et de Java Oracle. Malgré la compatibilité ascendante de Java, certains préfèrent, en entreprise notamment, utiliser une ancienne version pour développer car c'est sur cette version que le programme est destiné à être exécuté. Les anciennes versions, 6 d'OpenJDK et Java Oracle restent donc disponibles. Vous pouvez très bien installer la version 6 des paquets. Dans ce cas, dans les procédures d'installation il suffit de remplacer le 7 du nom des paquets par un 6. La cohabitation des versions ne posent pas de problèmes particulier.
Problèmes connus
Firefox ne trouve pas le greffon Java
sun-java-6-plugin. Rectigfié depuis ?
Vous avez installé un greffon Web Java par l'intermédiaire de Synaptic, mais Firefox ne le trouve pas : ( page about:plugins, Java n'apparaît pas).
Saisissez dans un terminal les commandes suivantes :
sudo update-alternatives --config firefox-javaplugin.so sudo update-alternatives --config mozilla-javaplugin.so
Sélectionnez chaque fois le greffon désiré (s'il y en a plusieurs) puis redémarrez Firefox.
Si ces commandes renvoient une erreur, vous pouvez essayer ça dans le terminal la commande suivante :
sudo update-alternatives --install /usr/lib/mozilla/plugins/mozilla-javaplugin.so mozilla-javaplugin.so /usr/lib/jvm/java-6-sun/jre/lib/i386/libnpjp2.so 1
en remplaçant "java-6-sun" par votre java installé et en remplaçant "i386" par "amd64" si vous utilisez un système 64 bits.
Police de caractères des menus trop petite (microscopique) sur grand écran
Solution testé sous Kubuntu 12.04 64 bits avec écran 42" d'une résolution de 1920x1080 utilisant « OpenJDK » (2013-07-28).
Pour corriger un problème de police de caractère trop petit dans l'écran d'accueil (écran du Login) et dans les applications écrite en langage Java, il faut modifier le fichier « /etc/X11/xorg.conf » pour qu'il reflète les mêmes valeurs que ce qui est configuré dans le panneau de configuration « Configuration → Apparence des applications → Polices → Forcer le PPP des polices : XX ».
Chez moi cela donne :
« Configuration → Apparence des applications → Polices → Forcer le PPP des polices : 96 ».
Ce "96" est à retenir pour la suite de la solution.
Donc, dans le fichier « /etc/X11/xorg.conf », dans « Section "Device" », ajouter à la fin les deux lignes suivantes en les adaptent à votre configuration :
Option "UseEdidDpi" "False" Option "DPI" "XX x XX"
Chez moi, je passe de :
Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "GeForce GTX 560 Ti" EndSection
Avec mon "96", je passe à :
Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "GeForce GTX 560 Ti" Option "UseEdidDpi" "False" Option "DPI" "96 x 96" EndSection
Un redémarrage de l'ordinateur et le tour est joué !
Tout le mérite de cette solution revient au bon génie Frédéric Côté, qui à laborieusement et méthodiquement suivi la piste du problème pour finalement le résoudre.
Je profite de l'occasion pour le remercier d'autant d'effort pour aider son prochain !
Vote par internet
Pour voter via internet aux élections (français de l’étranger par exemple) , le greffon icetea n'est pas accepté. Il faut installer la plate-forme d’exécution JRE d'Oracle puis taper dans une console
sudo update-alternatives --config mozilla-javaplugin.so
et choisir le fichier d'Oracle (dans mon cas /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libnpjp2.so)
/tmp
) et cliquez sur OK.
Voir aussi : Aide officielle(fr) sur la détection du greffon par Google-Chrome et Mozilla