Wie installiere ich openjdk-7-jdk unter Ubuntu 12.04, ohne die dazugehörigen GUI- und Sound-Pakete zu verschieben?

16

Ubuntu 12.04.2 LTS

Was ist denn hier los?

# 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

Ist es möglich, das JDK ohne die Hälfte von Gnome und X11 zu installieren? Und Soundthemen? Dies ist ein Server ohne Kopf (und ohne Lautsprecher).

Dr.Haribo
quelle
2
Hilft es, wenn Sie die --no-install-recommendsOption hinzufügen ?
Gertvdijk
3
Warum benötigen Sie Java Development Kit in einem Headless-Server? Wenn Sie nur Java-Anwendungen ausführen möchten, ist in der Regel nur die Laufzeitumgebung erforderlich. Probieren Sie aus, ob es openjdk-7-jre-headlessIhren Bedürfnissen entspricht.
Eric Carvalho
10
@EricCarvalho Hier ist ein Anwendungsfall: ein Continuous Integration Server, der die Java-Quellen erstellt. Das Erstellen von Java-Software auf einem Headless-Server ist nicht so exotisch.
gertvdijk
3
@gertvdijk Verstanden. Dann halte ich das für einen Bug. Es sollte ein openjdk-7-jdk-headless-Paket geben.
Eric Carvalho

Antworten:

9

AKTUALISIERT

Ich persönlich versuche Java zu meiden, weil es meiner Meinung nach sehr ungeschickt ist. Diese Anweisungen stammen aus verschiedenen Quellen, ich musste Java kürzlich installieren und dies sollte für Sie funktionieren.

Wenn Ihre Lizenzanforderungen dies zulassen, installieren Sie Oracle Java. Laden Sie Java von hier herunter . Sie müssen auswählen, welches Sie benötigen, basierend auf dem, was Sie installiert haben.

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

Beachten Sie, dass Sie eine Problemumgehung benötigen, damit wgetund Orakel gut zusammenspielen.

Erstellen Sie ein Verzeichnis, in dem Ihr Java leben wird:

sudo mkdir -p /usr/lib/jvm

Verschieben Sie das heruntergeladene Java:

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

Java extrahieren:

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

Sagen Sie Ubuntu, dass Java existiert:

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

Fügen Sie Ihrem Systemprofil einen Java-Pfad hinzu, damit der Computer weiß, wo sich die Java-Binärdateien befinden:

sudo nano /etc/profile

Fügen Sie am Ende der Datei Folgendes hinzu:

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

Speichern und neu starten.

Testen Sie Ihre Java-Installation:

java -version
Egidijus
quelle
1
Das hat bei mir funktioniert. Die einzige Änderung, die ich vorgenommen habe, war das Hinzufügen eines Symlinks aus dem aktuellen JDK-Verzeichnis /usr/lib/jvm/jdk1.7.0_45 zum generischen Speicherort: / usr / lib / jvm / java-7-oracle bei jeder Aktualisierung des JDK den Pfad in / etc / profile (und an möglichen anderen Anwendungsorten) zu aktualisieren. Auch viele Programme (zB elasticsearch) suchen Java unter / usr / liv / jvm / java-7-oracle als einen der Standardspeicherorte.
Ville
2

Sehr altes Zeug, aber wenn jemand danach sucht, einfach openjdk-7-jre-headless oder openjdk-6-jre-headless installieren

wmelendez
quelle
Die Frage
David Foerster
5
jre! = jdk es gibt kein jdk-headless
Dr.Haribo
Ausgenommen nicht: "openjdk-8-jre-headless" hängt von "libx11-6" in 16.04 ab, was dazu führt, dass X11 komplett ausgelaugt wird.
ThisGuy
-1

Ich denke, dies ist keine gute Idee, um Abhängigkeiten bei der Installation von der Quelle zu überspringen. Sie können dies nicht die ganze Zeit überspringen. Wenn Sie die Abhängigkeit mit apt-get aktualisieren, wird dies auch dort überprüft.

Nabil
quelle
3
"Beim Installieren von der Quelle" OP wird nicht von der Quelle installiert.
gertvdijk