04 janvier 2013

Debian: Utiliser java-package pour créer des packages natifs depuis les JDK et JRE de Sun

Installer java sous Linux consiste trop souvent:
  • à décompresser un fichier .tar.gz ou .zip,
  • à lancer un fichier .bin qui extrait son contenu dans le répertoire courant
Sur Debian, le package java-package de la section contrib permet de convertir une archive du JDK ou du JRE livrée par Sun (en fait Oracle maintenant) en package natif Debian (un fichier .deb), ce qui est bien plus commode et plus propre pour l'installation qu'un .tar.gz ou un fichier binaire.

Sur Debian Wheezy, après avoir ajouté contrib au fichier /etc/apt/sources.list puis lancé apt-get update, on installe java-package comme suit:

apt-get install java-package

Le paquet java-package installe la commande make-jpkg (make java package) qui convertit une archive .bin ou .tar.gz en provenance d'Oracle en paquet Debian.

Par exemple:

fakeroot make-jpkg /home/myuser/Downloads/jre-6u38-linux-x64.bin

On obtient alors dans le répertoire courant le fichier:

oracle-j2re1.6_1.6.0+update38_amd64.deb

Qu'il suffit d'installer comme suit:

sudo dpkg -l oracle-j2re1.6_1.6.0+update38_amd64.deb

On peut vérifier le contenu du package généré par:

sudo dpkg -c oracle-j2re1.6_1.6.0+update38_amd64.deb

En utilisant java-package, les JRE et JDK Java s'installent comme les autres logiciels sous Debian, et Java est accessible pour tous les utilisateurs du système et pas seulement pour un utilisateur donné.

Note: Si vous voulez convertir une archive de Java 7, il se peut que vous obteniez l'erreur suivante "No matching plugin was found".

En fait l'update 10 (et ceux d'après) de Java 7 n'est pas encore prévue dans java-package (qui ne prévoit qu'un digit de 0 à 9 !).

Il suffit alors de modifier le fichier /usr/share/java-package/oracle-j2re.sh (ou /usr/share/java-package/oracle-j2sdk.sh) pour ajouter [0-9] à la regexp du nom de l'archive.

Par exemple pour un JDK 7 sous Linux 64 bits:

        "jdk-7u"[0-9][0-9]"-linux-x64.tar.gz") # SUPPORTED
            j2se_version=1.7.0+update${archive_name:6:1}${revision}
            j2se_expected_min_size=180 #Mb
            j2se_priority=317
            found=true
            ;;

Libellés : , , , , , , , , , , , , , , , , ,

0 commentaires:

Enregistrer un commentaire

Abonnement Publier les commentaires [Atom]

<< Accueil

08 janvier 2012

Pourquoi les paquets sun-java* ont été retirés des dépots Debian & Ubuntu

Depuis 2006 et le changement de license par Sun du JDK et du JRE pour une license DLJ (Distro License for Java) , les systèmes d'exploitation libres comme Debian et Ubuntu pouvaient proposer dans leurs dépôts les JVM et JRE publiés par Sun.

Maintenant, suite au rachat de Sun par Oracle, on revient à la case départ, à savoir que Sun n'autorise désormais plus la redistribution de sa machine virtuelle Java (non libre).

Les acteurs du libre, Debian, Ubuntu, ... ont donc supprimé de leurs dépots les paquets sun-java*, et c'est pour cela qu'au mois de décembre 2011 suite à une mise à jour sur Debian ou Ubuntu, on pouvait se retrouver avec openjdk à la place de la JVM de Sun sans trop comprendre pourquoi.

Ceux qui comme moi n'ont pas installé Java avec Synaptic mais à la main dans un répertoire utilisateur n'auront pas de soucis !

Libellés : , , , , , , , , , , , , , ,

0 commentaires:

Enregistrer un commentaire

Abonnement Publier les commentaires [Atom]

<< Accueil