Comment installer openjdk-7-jdk sur Ubuntu 12.04 sans faire glisser dans une interface graphique et des packages sonores indépendants?

16

Ubuntu 12.04.2 LTS

Que se passe t-il ici?

# apt-get install openjdk-7-jdk
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  consolekit cryptsetup-bin dbus-x11 dconf-gsettings-backend dconf-service
  gconf-service gconf-service-backend gconf2 gconf2-common gvfs gvfs-common
  gvfs-daemons gvfs-libs libatasmart4 libavahi-glib1 libbonobo2-0
  libbonobo2-common libcairo-gobject2 libcanberra0 libck-connector0
  libcryptsetup4 libdconf0 libfontenc1 libgconf-2-4 libgconf2-4 libgdu0
  libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa libgnome-keyring-common
  libgnome-keyring0 libgnome2-0 libgnome2-bin libgnome2-common libgnomevfs2-0
  libgnomevfs2-common libgtk-3-0 libgtk-3-bin libgtk-3-common libgudev-1.0-0
  libidl-common libidl0 libllvm3.0 libltdl7 liblvm2app2.2 liborbit2
  libpam-ck-connector libpolkit-agent-1-0 libpolkit-backend-1-0 libsgutils2-2
  libtdb1 libvorbisfile3 libx11-xcb1 libxaw7 libxcb-glx0 libxcb-shape0 libxmu6
  libxpm4 libxv1 libxxf86dga1 libxxf86vm1 mtools openjdk-7-jre policykit-1
  policykit-1-gnome sound-theme-freedesktop udisks x11-utils

Est-il possible d'installer le JDK sans la moitié de Gnome et X11? Et des thèmes sonores? Il s'agit d'un serveur sans tête (et sans haut-parleur).

Dr.Haribo
la source
2
Est-ce que cela aide si vous ajoutez l' --no-install-recommendsoption?
gertvdijk
3
Pourquoi avez-vous besoin de Java Development Kit sur un serveur sans tête? Si vous souhaitez uniquement exécuter des applications java, vous n'avez généralement besoin que de l'environnement d'exécution. Essayez de voir si cela openjdk-7-jre-headlessconvient à vos besoins.
Eric Carvalho
10
@EricCarvalho Voici un cas d'utilisation: un serveur d'intégration continue qui construit les sources Java. Construire un logiciel Java sur un serveur sans tête n'est pas si exotique.
gertvdijk
3
@gertvdijk Je l'ai. Alors je pense que c'est un bug. Il devrait y avoir un paquet openjdk-7-jdk-headless.
Eric Carvalho

Réponses:

9

MIS À JOUR

J'essaie personnellement d'éviter Java parce qu'à mon avis c'est très maladroit. Ces instructions sont rassemblées à partir de diverses sources, j'ai dû installer Java récemment et cela devrait fonctionner pour vous.

Si vos exigences de licence le permettent, installez Oracle Java. Téléchargez java ici , vous devez choisir celui dont vous avez besoin en fonction de ce que vous avez installé.

JDK x64

wget --no-check-certificate --no-cookies - --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/7u51-b13/jdk-7u51-linux-x64.tar.gz

JDK x32

wget --no-check-certificate --no-cookies - --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/7u51-b13/jdk-7u51-linux-i586.tar.gz

JRE x64

wget --no-check-certificate --no-cookies - --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/7u51-b13/jre-7u51-linux-x64.tar.gz

JRE x32

wget --no-check-certificate --no-cookies - --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/7u51-b13/jre-7u51-linux-i586.tar.gz

Notez que vous avez besoin d'une solution de contournement wgetet d'oracle pour bien jouer ensemble.

Créez un répertoire où vivra votre Java:

sudo mkdir -p /usr/lib/jvm

Déplacez le Java téléchargé:

sudo mv jdk-7u51-linux-x64.tar.gz /usr/lib/jvm

Extraire Java:

sudo tar zxvf jdk-7u51-linux-x64.tar.gz

Dites à Ubuntu que Java existe:

sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.7.0_51/bin/javac 1
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.7.0_51/bin/java 1
sudo update-alternatives --set javac /usr/lib/jvm/jdk1.7.0_51/bin/javac
sudo update-alternatives --set java /usr/lib/jvm/jdk1.7.0_51/bin/java

Ajoutez un chemin java à votre profil système, afin que la machine sache où se trouvent les binaires Java:

sudo nano /etc/profile

À la fin du fichier, ajoutez ceci:

JAVA_HOME=/usr/lib/jvm/jdk1.7.0_51
PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME
export PATH

Enregistrez et redémarrez.

Testez votre installation Java:

java -version
Egidijus
la source
1
Cela a fonctionné pour moi. La seule modification que j'ai apportée a été d'ajouter un lien symbolique du répertoire jdk actuel /usr/lib/jvm/jdk1.7.0_45 à l'emplacement générique: / usr / lib / jvm / java-7-oracle De cette façon, on n'a pas pour mettre à jour le chemin dans / etc / profile (et dans d'autres emplacements d'application possibles) à chaque mise à jour du JDK. De nombreux programmes (par exemple elasticsearch) recherchent également java dans / usr / liv / jvm / java-7-oracle comme l'un des emplacements par défaut.
Ville
2

Très vieux trucs, mais si quelqu'un cherche encore cela, installez simplement openjdk-7-jre-headless ou openjdk-6-jre-headless

wmelendez
la source
La question concerne spécifiquement la version 7.
David Foerster
5
jre! = jdk il n'y a pas de jdk sans tête
Dr.Haribo
Sauf que non: "openjdk-8-jre-headless" dépend de "libx11-6" en 16.04, cela finit par tirer sur l'ensemble de X11.
ThisGuy
-1

Je pense que ce n'est pas une bonne idée d'ignorer toute dépendance lors de l'installation à partir de la source. Vous ne pouvez pas sauter cela tout le temps. Lorsque vous mettez à jour la dépendance à l'aide d'apt-get, elle sera également vérifiée.

Nabil
la source
3
"lors de l'installation à partir de la source" OP n'installe pas à partir de la source.
gertvdijk