Як встановити openjdk-7-jdk на Ubuntu 12.04 без перетягування у споріднені графічний інтерфейс та звукові пакети?


16

Ubuntu 12.04.2 LTS

Що тут відбувається?

# 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

Чи можна встановити JDK без половини Gnome та X11? А звукові теми? Це безголовий сервер (і без гучномовців).


2
Чи допоможе це, якщо ви додасте --no-install-recommendsваріант?
gertvdijk

3
Для чого вам потрібен комплект для розробки Java на безголовому сервері? Якщо ви хочете запускати лише Java-програми, зазвичай все, що вам потрібно, - це середовище виконання. Спробуйте і подивіться, чи openjdk-7-jre-headlessвідповідає вашим потребам.
Ерік Карвальо

10
@EricCarvalho Ось один випадок використання: сервер безперервної інтеграції, що будує джерела Java. Побудова програмного забезпечення Java на безголовому сервері не така екзотика.
gertvdijk

3
@gertvdijk Зрозумів. Тоді я думаю, що це помилка. Повинен бути пакет openjdk-7-jdk без голови.
Ерік Карвальо

Відповіді:


9

ОНОВЛЕНО

Я особисто намагаюся уникати Java, тому що, на мою думку, це дуже незграбно. Ці інструкції складаються з різних джерел, мені довелося нещодавно встановити Java, і це повинно працювати для вас.

Якщо ваші ліцензійні вимоги дозволяють, встановіть Oracle Java. Завантажуючи java звідси , вам потрібно вибрати те, яке вам потрібно, виходячи з того, що ви встановили.

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

Зауважте, що вам потрібно вирішити для wgetOracle, щоб грати добре разом.

Створіть каталог, де буде жити ваша Java:

sudo mkdir -p /usr/lib/jvm

Переміщення завантаженої Java:

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

Витяг Java:

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

Скажіть Ubuntu, що Java існує:

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

Додайте шлях до свого системного профілю, щоб машина знала, де знаходяться бінарні файли Java:

sudo nano /etc/profile

В кінці файлу додайте це:

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

Збережіть і перезавантажте.

Перевірте встановлення Java:

java -version

1
Це працювало для мене. Єдина зміна, яку я внесла, - додати символьне посилання з поточного каталогу jdk /usr/lib/jvm/jdk1.7.0_45 до загального місця розташування: / usr / lib / jvm / java-7-oracle. оновлювати шлях у / etc / profile (та в інших можливих місцях додатків) щоразу, коли JDK оновлюється. Також багато програм (наприклад, гумовий пошук) шукають java в / usr / liv / jvm / java-7-oracle як одному з локацій за замовчуванням.
Віль

2

Дуже старий матеріал, але якщо хтось ще шукає для цього, просто встановіть openjdk-7-jre-headless або openjdk-6-jre-headless


Питання задається спеціально щодо версії 7.
Девід Фоерстер

5
jre! = jdk немає jdk без голови
Dr.Haribo

За винятком випадків: "openjdk-8-jre-headless" залежить від "libx11-6" 16.04, це закінчується тягненням у цілому X11.
ЦеGuy

-1

Я думаю, що це не дуже гарна ідея пропускати будь-яку залежність при установці з джерела. Ви не можете пропустити це весь час. Коли ви оновлюєте залежність за допомогою apt-get, це також буде перевірено.


3
"при установці з джерела" ОП не встановлюється з джерела.
gertvdijk
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.