Вопрос: Как я могу установить проприетарную Java JDK 6/7/8 или JRE?


Я хочу установить Oracle JRE и обновить до последней версии с помощью Software Updater, когда они выпущены. Есть ли пакет Ubuntu, предоставляемый Canonical или Oracle?

Перед выпуском Java 7 я последовал сюда установить Java 6,

Но это не работает Java 7, Нет пакета sun-java7-xxx, Как вы можете установить Java 7?


532
2017-08-07 08:04


Источник


Я также хотел бы отметить, что использование OpenJDK является более чем жизнеспособной альтернативой: это также эталонная реализация сейчас, - nickguletskii
openJdk не поддерживается апплетами банков или другим программным обеспечением. пример: студия Aptana - Elzo Valugi
ссылка на «этот путь», кажется, раскрывает ... нет описания пути? - rogerdpack
@ElzoValugi Думаю, вам понадобится Iced Tea, чтобы использовать апплеты банка. Он основан на OpenJDK. - GKFX
@GKFX нет, для этого конкретного банка IcedTea не работал, и банк поддерживал только Oracle Java. Между тем они прекращают использовать Java, и я думаю, что это было мудрое решение. - Elzo Valugi


Ответы:


Eсть аналогичный ответ о том, как установить JRE 7.

Установка Java JDK

Ручной способ

  • Скачать 32-битный или 64-разрядный «сжатый двоичный файл» Linux - он имеет расширение «.tar.gz».

  • Раскройте его

    tar -xvf jdk-8-linux-i586.tar.gz   (32-битный)

    tar -xvf jdk-8-linux-x64.tar.gz   (64-битный)

    Пакет JDK 8 извлекается в ./jdk1.8.0 каталог. N.B .: Внимательно проверьте это имя папки, так как Oracle, похоже, периодически меняется с каждым обновлением.

  • Теперь переместите каталог JDK 8 в /usr/lib

    sudo mkdir -p / usr / lib / jvm
    sudo mv ./jdk1.8.0 / usr / lib / jvm /
    
  • Теперь запустите

    sudo update-alternatives --install "/ usr / bin / java" "java" "/usr/lib/jvm/jdk1.8.0/bin/java" 1
    sudo update-alternatives --install "/ usr / bin / javac" "javac" "/usr/lib/jvm/jdk1.8.0/bin/javac" 1
    sudo update-alternatives --install "/ usr / bin / javaws" "javaws" "/usr/lib/jvm/jdk1.8.0/bin/javaws" 1
    

    Это присвоит Oracle JDK приоритет 1, что означает, что установка других JDK будет замените его по умолчанию, Обязательно используйте более высокий приоритет, если вы хотите, чтобы Oracle JDK оставался по умолчанию.

  • Исправьте владельца файла и разрешения исполняемых файлов:

    sudo chmod a + x / usr / bin / java
    sudo chmod a + x / usr / bin / javac
    sudo chmod a + x / usr / bin / javaws
    sudo chown -R root: root /usr/lib/jvm/jdk1.8.0
    

    N.B .: Помните - Java JDK имеет много других исполняемых файлов, которые можно аналогичным образом установить, как указано выше. java, javac, javaws вероятно, наиболее часто требуется. Эта списки ответов другие доступные исполняемые файлы.

  • Бег

    sudo update-alternatives --config java
    

    Вы увидите результат, аналогичный приведенному ниже - выберите число jdk1.8.0 - например 3 в этом списке (если вы еще не установили Java, установленную на вашем компьютере, в этом случае появится предложение «Нечего настраивать»):

    $ sudo update-alternatives --config java
    There are 3 choices for the alternative java (providing /usr/bin/java).
    
      Selection    Path                                            Priority   Status
    ------------------------------------------------------------
      0            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      auto mode
      1            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      manual mode
    * 2            /usr/lib/jvm/jdk1.7.0/bin/java                   1         manual mode
      3            /usr/lib/jvm/jdk1.8.0/bin/java                   1         manual mode
    
    Press enter to keep the current choice[*], or type selection number: 3
    update-alternatives: using /usr/lib/jvm/jdk1.8.0/bin/java to provide /usr/bin/java (java) in manual mode
    

    Повторите вышеуказанное для:

    sudo update-alternatives --config javac
    sudo update-alternatives --config javaws
    

Примечание для пользователей NetBeans!

Тебе нужно установить новый JDK по умолчанию редактирование файла конфигурации.


Если вы хотите включить плагин Mozilla Firefox:

32 bit:
ln -s /usr/lib/jvm/jdk1.8.0/jre/lib/i386/libnpjp2.so ~/.mozilla/plugins/

64 bit:
ln -s /usr/lib/jvm/jdk1.8.0/jre/lib/amd64/libnpjp2.so ~/.mozilla/plugins/

N.B .: Вы можете связать плагин (libnpjp2.so) до /usr/lib/firefox/plugins/ для общесистемной установки (/usr/lib/firefox-addons/plugins с 15 апреля и далее). Для Ubuntu 13.10 путь к каталогу плагина /usr/lib/firefox/browser/plugins/,

В зависимости от вашей конфигурации вам может потребоваться обновить профиль apparmor для Firefox (или других браузеров) в /etc/apparmor.d/abstractions/ubuntu-browsers.d/java:

# Replace the two lines:
#  /usr/lib/jvm/java-*-sun-1.*/jre/bin/java{,_vm} cx -> browser_java,
#  /usr/lib/jvm/java-*-sun-1.*/jre/lib/*/libnp*.so cx -> browser_java,
# with those (or adapt to your new jdk folder name)
/usr/lib/jvm/jdk*/jre/bin/java{,_vm} cx -> browser_java,
/usr/lib/jvm/jdk*/jre/lib/*/libnp*.so cx -> browser_java,

Затем перезапустите apparmor:

sudo /etc/init.d/apparmor restart

Простой способ

Самый простой способ установить JDK 7 - это сделать это с помощью Web Up8 Oracle OOS. Однако считается, что этот PPA иногда устарел. Также обратите внимание опасности использования PPA,

Это устанавливает JDK 7 (который включает Java JDK, JRE и плагин для браузера Java):

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
# or if you want JDK 8:
# sudo apt-get install oracle-java8-installer
# these commands install Oracle JDK7/8 and set them as default VMs automatically:
# sudo apt-get install oracle-java7-set-default
# sudo apt-get install oracle-java8-set-default

Источник

Н.Б .: Прежде чем кто-то кричит это против лицензии на перераспределение Oracle - PPA фактически не содержит Java в личном хранилище. Вместо этого PPA напрямую загружает из Oracle и устанавливает его.

Сценарий

Если вы используете новую установку Ubuntu без предыдущих установок Java, этот скрипт автоматизирует описанный выше процесс, если вы не хотите вводить все это в консоль. Помню тебя по-прежнему необходимо загрузить Java с сайта Oracle - Ссылки Oracle не являются wget дружелюбный.

Прежде чем использовать это убедиться что этот скрипт находится в том же каталоге, что и .tar.gz расширение файла, которое вы нет файлы, начинающиеся с jdk-7 в одной папке. Если есть, пожалуйста, временно переместите их из папки. Не забудьте сделать исполняемый файл сценария (chmod +x <script's file>).

#!/bin/sh

tar -xvf jdk-7*
sudo mkdir /usr/lib/jvm
sudo mv ./jdk1.7* /usr/lib/jvm/jdk1.7.0
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0/bin/java" 1
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0/bin/javac" 1
sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk1.7.0/bin/javaws" 1
sudo chmod a+x /usr/bin/java
sudo chmod a+x /usr/bin/javac
sudo chmod a+x /usr/bin/javaws

Если вы хотите установить плагин для Firefox, добавьте его в конец скрипта:

mkdir ~/.mozilla/plugins
ln -s /usr/lib/jvm/jdk1.7.0/jre/lib/amd64/libnpjp2.so ~/.mozilla/plugins/
sudo /etc/init.d/apparmor restart

Проверьте, прошла ли установка успешно

Вы можете проверить, удалось ли выполнить установку с помощью следующей команды:

java -version

Вы должны увидеть что-то вроде

java version "1.8.0"
Java(TM) SE Runtime Environment (build 1.8.0-b132)
Java HotSpot(TM) 64-Bit Server VM (build 25.0-b70, mixed mode)

Вы можете проверить, был ли плагин JRE Mozilla успешным, используя официальный сайт оракула,


Для Java 6: Как установить Oracle JDK 6?


845
2017-08-07 11:32



Нужно сделать все тот же процесс, чтобы его обновить? - Lucio
Это успешно сработало для установки 32-разрядной JDK на Ubuntu 12.04LTS, за исключением того, что я получал bash: /usr/bin/java: No such file or directory когда я пытался запустить java -version, apt-get install libc6-i386 исправлена ​​проблема. - gregmac
Я предлагаю использовать /usr/local/* на месте /usr/* для любой ручной установки, как здесь. Таким образом, вы устанавливаете вручную, не загромождаете вещи, управляемые менеджером пакетов, и делаете ручную установку более управляемой - Flint
Я настоятельно рекомендую ручной выход из этого. Это самый надежный. PPA больше не работает, поскольку Oracle Java лицензируется. И в приведенном выше сценарии предполагается, что вы используете компилятор и среду выполнения, и эта версия устарела. - JohnMerlino
Как установить man-страницу? - Tim


Eсть аналогичный ответ о том, как установить JDK 8

Установите JRE

Скачать 32-битный или 64-разрядный «сжатый двоичный файл» Linux - он имеет расширение «.tar.gz» и распаковывает его

tar -xvf jre-7-linux-i586.tar.gz

Пакет JRE 7 извлекается в каталог ./jre1.7.0. Теперь переместите каталог JRE 7 в /usr/lib:

sudo mv ./jre1.7.0* /usr/lib/jvm/jre1.7.0

Затем запустите следующую команду, чтобы получить список установленных Java-альтернатив.

sudo update-alternatives --config java

Вы получите результат как:

There are 2 choices for the alternative java (providing /usr/bin/java).

Selection Path Priority Status
————————————————————
* 0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 auto mode
1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 manual mode
2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual mode

Press enter to keep the current choice[*], or type selection number:

Помните последний номер и нажмите Enter, чтобы выйти из этой утилиты, то есть в этом примере запомните номер 2,

Если отображается только одна альтернатива, запомните номер 0,

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jre1.7.0/bin/java 3

Это добавит вашу новую установку JRE 7 в список альтернатив, т. Е. Используйте запоминаемый номер + 1, то есть 3 в приведенном выше примере. Теперь настройте Java для использования Java Java JRE:

sudo update-alternatives --config java

Вы увидите аналогичный результат ниже - выберите число jre1.7.0, то есть, 3:

There are 3 choices for the alternative java (providing /usr/bin/java).

Selection Path Priority Status
————————————————————
* 0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 auto mode
1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 manual mode
2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual mode
3 /usr/lib/jvm/jre1.7.0/jre/bin/java 3 manual mode

Press enter to keep the current choice[*], or type selection number: 3
update-alternatives: using /usr/lib/jvm/jre1.7.0/jre/bin/java to provide /usr/bin/java (java) in manual mode.

N.B .: Если предыдущей установки Java не было, новая JRE будет по умолчанию, и вы не увидите выше.

Проверьте версию новой установки JRE 7:

java -version

Он должен производить

java version “1.7.0”
Java(TM) SE Runtime Environment (build 1.7.0-b147)
Java HotSpot(TM) Client VM (build 21.0-b17, mixed mode)

Установите плагин Firefox / Chrome

В терминале:

mkdir ~/.mozilla/plugins

Удалите плагин IcedTea, если он был установлен.

sudo apt-get remove icedtea6-plugin

Удалите прежнюю версию плагина Java (может быть или не быть):

rm ~/.mozilla/plugins/libnpjp2.so

Теперь вы можете установить плагин, создав символическую ссылку (вы скажете Firefox, где находится плагин). Для 32-разрядного использования Java

ln -s /usr/lib/jvm/jre1.7.0/lib/i386/libnpjp2.so ~/.mozilla/plugins/

Для 64-битного использования Java

ln -s /usr/lib/jvm/jre1.7.0/lib/amd64/libnpjp2.so ~/.mozilla/plugins/

Убедитесь, что JRE прошла успешно, используя официальный сайт оракула,


170
2017-09-17 20:30



После запуска sudo update-alternatives --config java, Я получаю следующий вывод:There is only one alternative in link group java: /usr/lib/jvm/java-6-openjdk/jre/bin/java Nothing to configure. Что я делаю не так? - Shoan
отличный ответ, спасибо! Интересно, почему Oracle не может тратить время на создание пакетов для этого ... - bbqchickenrobot
@Shoan, в этом случае, переходите к шагу ", если отображается только одна альтернатива, а затем помните номер 0" - henrique
Спасибо за этот ответ, инструкции Oracles - это мусор для Linux noob, это сделало вещи намного проще! - David Barker
Хотя этот метод работает - apt-get не будет знать, что у вас установлена ​​Java. Поэтому попытка установки таких инструментов, как ant, maven и т. Д., Все равно захочет установить openjdk. Вместо этого webupd8.org/2012/01/... отлично поработал для меня! - Brad


Вот тестовое и рабочее решение для установки Oracle JDK 7 и всех его файлов, так что «javac» и все остальное работает: Как установить Oracle Java 7 (JDK) в Ubuntu

Вот команды (только для удобства):

  1. Загрузите последнюю версию Oracle JDK 7 из Вот,
  2. Извлеките загруженный архив Oracle JDK в вашей домашней папке - необходимо создать новую папку под названием «jdk1.7.0_03» (для Java JDK7 update 3). Переименуйте его в «java-7-oracle» и переместите его в / usr / lib / jvm, используя следующие команды:
cd
sudo mkdir -p /usr/lib/jvm/      #just in case
sudo mv java-7-oracle/ /usr/lib/jvm/

3. Установите пакет обновления Java, созданный Bruce Ingalls (пакеты доступны для Ubuntu 11.10, 11.04, 10.10 и 10.04):

sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt-get update
sudo apt-get install update-java

4. Теперь запустите следующую команду в терминале для установки Oracle Java JDK:

sudo update-java

Select the Java Version that you want to install and set as the default

Через несколько минут Oracle JDK должен быть успешно установлен на вашем компьютере Ubuntu. Вы можете проверить версию, выполнив эти команды в терминале:

java -version
javac -version

Обновление Oracle выпустило Java 8 (стабильный). Чтобы установить его, используйте следующие команды:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

Дополнительная информация @ WebUpd8: Установка Oracle Java 8 в Ubuntu через репозиторий PPA [JDK8]


100
2018-01-29 10:42



Я думаю, что этот скрипт будет работать на Gnome (инструменты), но требует много дополнительных установок, как для машины Kubuntu (например, отсутствует gksudo на Kubuntu). - Marcin Gil
хорошее и относительно безболезненное решение на Precise, только что установили jdk1.7.0_03 на нем - prusswan
Я просто использовал этот метод, чтобы поставить jdk1.7.0_03 на Precise beta 2. Он работал, хотя сообщалось об ошибке (в Zenity, очевидно); ошибка, похоже, не повлияла на результат. - Kelley
попробовал это на ubuntu 13.04, и он работает. +1 спасибо - mamdouh alramadan
Добавьте информацию, которая, если мы не хотим удалить какой-либо существующий jdk, тогда мы должны пропустить первое диалоговое окно, которое удалить существующий jdk - Anwar


Из http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ubuntu-via.html :

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-jdk7-installer

94
2017-10-17 16:58



Мне интересно, почему большинство людей испытывают соблазн использовать первый ответ, который довольно сложный и требует много ручной работы, например, загрузки установщика на вашем компьютере и перемещения его на сервер. Ваш ответ прост и эффективен !!! Техас - sorin
@SorinSbarnea Некоторые люди не любят использовать сторонние репозитории, потому что они не всегда обновляются или онлайн, если на то пошло. - umop aplsdn
На сервере Ubuntu мне пришлось использовать «sudo apt-get install python-software-properties», чтобы получить команду add-apt-repository. - Mark Butler
@SorinSbarnea, потому что репозиторий, как правило, устарел - dstarh
Обратите внимание, что PPP Webupd8 также содержит скрипт, который установит Oracle Java по умолчанию (полезно, если у вас установлено несколько JRE / JDK), установите его с помощью sudo apt-get install oracle-java8-set-default, Также обратите внимание, что этот ответ немного устарел, вероятно, вы должны установить oracle-java8-installer Эти дни. - JonasCz


Вот как я сейчас установил его в Oneiric. Это будет довольно длинный ответ, но это сработало для меня.

Загрузите последнюю версию Java SDK 1.7.0 из Oracle. Затем извлеките его / USR / Библиотека / JVM:

cd /usr/lib/jvm/
sudo tar -xvzf ~/jdk-7-linux-x64.tar.gz
sudo mv jdk1.7.0 java-7-oracle
sudo ln -s java-7-oracle java-1.7.0-oracle

После этого я создал .java-1.7.0-oracle.jinfo файл в / usr / lib / jvm со следующим содержимым:

alias=java-7-oracle
priority=100
section=non-free

jre ControlPanel /usr/lib/jvm/java-7-oracle/jre/bin/ControlPanel
jre java /usr/lib/jvm/java-7-oracle/jre/bin/java
jre java_vm /usr/lib/jvm/java-7-oracle/jre/bin/java_vm
jre javaws /usr/lib/jvm/java-7-oracle/jre/bin/javaws
jre jcontrol /usr/lib/jvm/java-7-oracle/jre/bin/jcontrol
jre keytool /usr/lib/jvm/java-7-oracle/jre/bin/keytool
jre pack200 /usr/lib/jvm/java-7-oracle/jre/bin/pack200
jre policytool /usr/lib/jvm/java-7-oracle/jre/bin/policytool
jre rmid /usr/lib/jvm/java-7-oracle/jre/bin/rmid
jre rmiregistry /usr/lib/jvm/java-7-oracle/jre/bin/rmiregistry
jre unpack200 /usr/lib/jvm/java-7-oracle/jre/bin/unpack200
jre orbd /usr/lib/jvm/java-7-oracle/jre/bin/orbd
jre servertool /usr/lib/jvm/java-7-oracle/jre/bin/servertool
jre tnameserv /usr/lib/jvm/java-7-oracle/jre/bin/tnameserv
jre jexec /usr/lib/jvm/java-7-oracle/jre/lib/jexec
jdk appletviewer /usr/lib/jvm/java-7-oracle/bin/appletviewer
jdk apt /usr/lib/jvm/java-7-oracle/bin/apt
jdk extcheck /usr/lib/jvm/java-7-oracle/bin/extcheck
jdk idlj /usr/lib/jvm/java-7-oracle/bin/idlj
jdk jar /usr/lib/jvm/java-7-oracle/bin/jar
jdk jarsigner /usr/lib/jvm/java-7-oracle/bin/jarsigner
jdk java-rmi.cgi /usr/lib/jvm/java-7-oracle/bin/java-rmi.cgi
jdk javac /usr/lib/jvm/java-7-oracle/bin/javac
jdk javadoc /usr/lib/jvm/java-7-oracle/bin/javadoc
jdk javah /usr/lib/jvm/java-7-oracle/bin/javah
jdk javap /usr/lib/jvm/java-7-oracle/bin/javap
jdk jconsole /usr/lib/jvm/java-7-oracle/bin/jconsole
jdk jdb /usr/lib/jvm/java-7-oracle/bin/jdb
jdk jhat /usr/lib/jvm/java-7-oracle/bin/jhat
jdk jinfo /usr/lib/jvm/java-7-oracle/bin/jinfo
jdk jmap /usr/lib/jvm/java-7-oracle/bin/jmap
jdk jps /usr/lib/jvm/java-7-oracle/bin/jps
jdk jrunscript /usr/lib/jvm/java-7-oracle/bin/jrunscript
jdk jsadebugd /usr/lib/jvm/java-7-oracle/bin/jsadebugd
jdk jstack /usr/lib/jvm/java-7-oracle/bin/jstack
jdk jstat /usr/lib/jvm/java-7-oracle/bin/jstat
jdk jstatd /usr/lib/jvm/java-7-oracle/bin/jstatd
jdk native2ascii /usr/lib/jvm/java-7-oracle/bin/native2ascii
jdk rmic /usr/lib/jvm/java-7-oracle/bin/rmic
jdk schemagen /usr/lib/jvm/java-7-oracle/bin/schemagen
jdk serialver /usr/lib/jvm/java-7-oracle/bin/serialver
jdk wsgen /usr/lib/jvm/java-7-oracle/bin/wsgen
jdk wsimport /usr/lib/jvm/java-7-oracle/bin/wsimport
jdk xjc /usr/lib/jvm/java-7-oracle/bin/xjc
plugin xulrunner-1.9-javaplugin.so /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libnpjp2.so
plugin mozilla-javaplugin.so /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libnpjp2.so

Затем вам нужно рассказать об обновлении альтернатив обо всех новых материалах:

$ sudo -sH
Password:
# update-alternatives --quiet --install /usr/lib/xulrunner-addons/plugins/libjavaplugin.so xulrunner-1.9-javaplugin.so /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libnpjp2.so 100
# update-alternatives --quiet --install /usr/lib/mozilla/plugins/libjavaplugin.so mozilla-javaplugin.so /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libnpjp2.so 100
# update-alternatives --quiet --install /usr/bin/appletviewer appletviewer /usr/lib/jvm/java-7-oracle/bin/appletviewer 100 --slave /usr/share/man/man1/appletviewer.1 appletviewer.1 /usr/lib/jvm/java-7-oracle/man/man1/appletviewer.1
# update-alternatives --quiet --install /usr/bin/apt apt /usr/lib/jvm/java-7-oracle/bin/apt 100 --slave /usr/share/man/man1/apt.1 apt.1 /usr/lib/jvm/java-7-oracle/man/man1/apt.1
# update-alternatives --quiet --install /usr/bin/extcheck extcheck /usr/lib/jvm/java-7-oracle/bin/extcheck 100 --slave /usr/share/man/man1/extcheck.1 extcheck.1 /usr/lib/jvm/java-7-oracle/man/man1/extcheck.1
# update-alternatives --quiet --install /usr/bin/idlj idlj /usr/lib/jvm/java-7-oracle/bin/idlj 100 --slave /usr/share/man/man1/idlj.1 idlj.1 /usr/lib/jvm/java-7-oracle/man/man1/idlj.1
# update-alternatives --quiet --install /usr/bin/jar jar /usr/lib/jvm/java-7-oracle/bin/jar 100 --slave /usr/share/man/man1/jar.1 jar.1 /usr/lib/jvm/java-7-oracle/man/man1/jar.1
# update-alternatives --quiet --install /usr/bin/jarsigner jarsigner /usr/lib/jvm/java-7-oracle/bin/jarsigner 100 --slave /usr/share/man/man1/jarsigner.1 jarsigner.1 /usr/lib/jvm/java-7-oracle/man/man1/jarsigner.1
# update-alternatives --quiet --install /usr/bin/javac javac /usr/lib/jvm/java-7-oracle/bin/javac 100 --slave /usr/share/man/man1/javac.1 javac.1 /usr/lib/jvm/java-7-oracle/man/man1/javac.1
# update-alternatives --quiet --install /usr/bin/javadoc javadoc /usr/lib/jvm/java-7-oracle/bin/javadoc 100 --slave /usr/share/man/man1/javadoc.1 javadoc.1 /usr/lib/jvm/java-7-oracle/man/man1/javadoc.1
# update-alternatives --quiet --install /usr/bin/javah javah /usr/lib/jvm/java-7-oracle/bin/javah 100 --slave /usr/share/man/man1/javah.1 javah.1 /usr/lib/jvm/java-7-oracle/man/man1/javah.1
# update-alternatives --quiet --install /usr/bin/javap javap /usr/lib/jvm/java-7-oracle/bin/javap 100 --slave /usr/share/man/man1/javap.1 javap.1 /usr/lib/jvm/java-7-oracle/man/man1/javap.1
# update-alternatives --quiet --install /usr/bin/jconsole jconsole /usr/lib/jvm/java-7-oracle/bin/jconsole 100 --slave /usr/share/man/man1/jconsole.1 jconsole.1 /usr/lib/jvm/java-7-oracle/man/man1/jconsole.1
# update-alternatives --quiet --install /usr/bin/jdb jdb /usr/lib/jvm/java-7-oracle/bin/jdb 100 --slave /usr/share/man/man1/jdb.1 jdb.1 /usr/lib/jvm/java-7-oracle/man/man1/jdb.1
# update-alternatives --quiet --install /usr/bin/jhat jhat /usr/lib/jvm/java-7-oracle/bin/jhat 100 --slave /usr/share/man/man1/jhat.1 jhat.1 /usr/lib/jvm/java-7-oracle/man/man1/jhat.1
# update-alternatives --quiet --install /usr/bin/jinfo jinfo /usr/lib/jvm/java-7-oracle/bin/jinfo 100 --slave /usr/share/man/man1/jinfo.1 jinfo.1 /usr/lib/jvm/java-7-oracle/man/man1/jinfo.1
# update-alternatives --quiet --install /usr/bin/jmap jmap /usr/lib/jvm/java-7-oracle/bin/jmap 100 --slave /usr/share/man/man1/jmap.1 jmap.1 /usr/lib/jvm/java-7-oracle/man/man1/jmap.1
# update-alternatives --quiet --install /usr/bin/jps jps /usr/lib/jvm/java-7-oracle/bin/jps 100 --slave /usr/share/man/man1/jps.1 jps.1 /usr/lib/jvm/java-7-oracle/man/man1/jps.1
# update-alternatives --quiet --install /usr/bin/jrunscript jrunscript /usr/lib/jvm/java-7-oracle/bin/jrunscript 100 --slave /usr/share/man/man1/jrunscript.1 jrunscript.1 /usr/lib/jvm/java-7-oracle/man/man1/jrunscript.1
# update-alternatives --quiet --install /usr/bin/jsadebugd jsadebugd /usr/lib/jvm/java-7-oracle/bin/jsadebugd 100 --slave /usr/share/man/man1/jsadebugd.1 jsadebugd.1 /usr/lib/jvm/java-7-oracle/man/man1/jsadebugd.1
# update-alternatives --quiet --install /usr/bin/jstack jstack /usr/lib/jvm/java-7-oracle/bin/jstack 100 --slave /usr/share/man/man1/jstack.1 jstack.1 /usr/lib/jvm/java-7-oracle/man/man1/jstack.1
# update-alternatives --quiet --install /usr/bin/jstat jstat /usr/lib/jvm/java-7-oracle/bin/jstat 100 --slave /usr/share/man/man1/jstat.1 jstat.1 /usr/lib/jvm/java-7-oracle/man/man1/jstat.1
# update-alternatives --quiet --install /usr/bin/jstatd jstatd /usr/lib/jvm/java-7-oracle/bin/jstatd 100 --slave /usr/share/man/man1/jstatd.1 jstatd.1 /usr/lib/jvm/java-7-oracle/man/man1/jstatd.1
# update-alternatives --quiet --install /usr/bin/native2ascii native2ascii /usr/lib/jvm/java-7-oracle/bin/native2ascii 100 --slave /usr/share/man/man1/native2ascii.1 native2ascii.1 /usr/lib/jvm/java-7-oracle/man/man1/native2ascii.1
# update-alternatives --quiet --install /usr/bin/rmic rmic /usr/lib/jvm/java-7-oracle/bin/rmic 100 --slave /usr/share/man/man1/rmic.1 rmic.1 /usr/lib/jvm/java-7-oracle/man/man1/rmic.1
# update-alternatives --quiet --install /usr/bin/schemagen schemagen /usr/lib/jvm/java-7-oracle/bin/schemagen 100 --slave /usr/share/man/man1/schemagen.1 schemagen.1 /usr/lib/jvm/java-7-oracle/man/man1/schemagen.1
# update-alternatives --quiet --install /usr/bin/serialver serialver /usr/lib/jvm/java-7-oracle/bin/serialver 100 --slave /usr/share/man/man1/serialver.1 serialver.1 /usr/lib/jvm/java-7-oracle/man/man1/serialver.1
# update-alternatives --quiet --install /usr/bin/wsgen wsgen /usr/lib/jvm/java-7-oracle/bin/wsgen 100 --slave /usr/share/man/man1/wsgen.1 wsgen.1 /usr/lib/jvm/java-7-oracle/man/man1/wsgen.1
# update-alternatives --quiet --install /usr/bin/wsimport wsimport /usr/lib/jvm/java-7-oracle/bin/wsimport 100 --slave /usr/share/man/man1/wsimport.1 wsimport.1 /usr/lib/jvm/java-7-oracle/man/man1/wsimport.1
# update-alternatives --quiet --install /usr/bin/xjc xjc /usr/lib/jvm/java-7-oracle/bin/xjc 100 --slave /usr/share/man/man1/xjc.1 xjc.1 /usr/lib/jvm/java-7-oracle/man/man1/xjc.1
# update-alternatives --quiet --install /usr/bin/java-rmi.cgi java-rmi.cgi /usr/lib/jvm/java-7-oracle/bin/java-rmi.cgi 100
# update-alternatives --quiet --install /usr/bin/ControlPanel ControlPanel /usr/lib/jvm/java-7-oracle/jre/bin/ControlPanel 100
# update-alternatives --quiet --install /usr/bin/java java /usr/lib/jvm/java-7-oracle/jre/bin/java 100
# update-alternatives --quiet --install /usr/bin/java_vm java_vm /usr/lib/jvm/java-7-oracle/jre/bin/java_vm 100
# update-alternatives --quiet --install /usr/bin/javaws javaws /usr/lib/jvm/java-7-oracle/jre/bin/javaws 100
# update-alternatives --quiet --install /usr/bin/jcontrol jcontrol /usr/lib/jvm/java-7-oracle/jre/bin/jcontrol 100
# update-alternatives --quiet --install /usr/bin/keytool keytool /usr/lib/jvm/java-7-oracle/jre/bin/keytool 100
# update-alternatives --quiet --install /usr/bin/pack200 pack200 /usr/lib/jvm/java-7-oracle/jre/bin/pack200 100
# update-alternatives --quiet --install /usr/bin/policytool policytool /usr/lib/jvm/java-7-oracle/jre/bin/policytool 100
# update-alternatives --quiet --install /usr/bin/rmid rmid /usr/lib/jvm/java-7-oracle/jre/bin/rmid 100
# update-alternatives --quiet --install /usr/bin/rmiregistry rmiregistry /usr/lib/jvm/java-7-oracle/jre/bin/rmiregistry 100
# update-alternatives --quiet --install /usr/bin/unpack200 unpack200 /usr/lib/jvm/java-7-oracle/jre/bin/unpack200 100
# update-alternatives --quiet --install /usr/bin/orbd orbd /usr/lib/jvm/java-7-oracle/jre/bin/orbd 100
# update-alternatives --quiet --install /usr/bin/servertool servertool /usr/lib/jvm/java-7-oracle/jre/bin/servertool 100
# update-alternatives --quiet --install /usr/bin/tnameserv tnameserv /usr/lib/jvm/java-7-oracle/jre/bin/tnameserv 100
# update-alternatives --quiet --install /usr/bin/jexec jexec /usr/lib/jvm/java-7-oracle/jre/lib/jexec 100

Теперь вы можете использовать альтернативы обновлений для выбора недавно установленного Java SDK.

# update-alternatives --config java              # Select java-1.7.0-oracle
# update-java-alternatives --set java-1.7.0-oracle
# exit
$

Это сработало для меня, если есть более элегантный способ (без использования сторонних PPA), я был бы рад услышать об этом. Мне все еще нужно протестировать Firefox, если я могу запустить Java в нем.


38
2018-05-15 06:30



Отлично работает, за исключением того, что финальная команда выдает ошибку (хотя все остальное работает даже в Firefox / Chrome). Кажется, это связано с установкой OpenJDK6 по умолчанию с Oneiric. «Update-alternatives: error: нет альтернатив для -javaplugin.so». В скрытом файле .java.1.6.0.jinfo, похоже, есть альтернатива, указывающая на -javaplugin.so. Предположим ли мы сделать третий альтернативный пункт libnpjp2.so с ним, возможно? - Nicholi
Я решил поставить шаги, упомянутые BigWhale выше в простом сценарии оболочки. Единственный ручной шаг - загрузить 64-битный tar.gz с сайта Oracle. Ознакомьтесь с инструкциями здесь. - julius
Это единственное решение, которое показывает, как добавить страницы руководства! - DavidG
Решение @DavidG Alien Andrei также работает безупречно - Anwar
Также это решение предназначено для 64-битного Ubuntu. для 32-битного, мы должны иметь i386 вместо amd64 - Anwar


ОБНОВЛЕННЫЙ ОТВЕТ:

Я предлагаю использовать один из webupd8team ppa в этом случае:

1) Введите эти 2 команды в Терминал, чтобы добавить этот PPA и обновить список пакетов:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update

2) Введите одну (или более) из этих команд, чтобы установить необходимые вам (-ы) Java (-ы):

  • sudo apt-get install oracle-java6-installer
  • sudo apt-get install oracle-java7-installer
  • sudo apt-get install oracle-java8-installer
  • sudo apt-get install oracle-java9-installer

3) Когда загружается соответствующий сценарий установки Java, а затем он загружает и устанавливает запатентованные пакеты Java, вы также можете ввести следующую команду для проверки результата установки:

java -version

Затем вы должны получить вывод терминала (для стабильной версии java8) следующим образом:

java version "1.8.0_72"
Java(TM) SE Runtime Environment (build 1.8.0_72-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.72-b15, mixed mode)

Дополнительная информация: http://www.webupd8.org/2012/09/install-oracle-java-8-in-ubuntu-via-ppa.html

NB: эти пакеты предоставляют Oracle JDK Java, который включает Java JDK, JRE и плагин для браузера Java. И webupd8team / java PPA содержит только эти установщики, которые просто подключаются к сайту загрузки Java Java и устанавливают последний JDK.


25
2017-09-02 07:52



Спасибо за ответ. Только таким образом мой Chrome JRE работал! - Fatih Karatana
устанавливает ли он только jre или весь jdk, если весь jdk, то какой способ ограничить установку только jre? - Rajat Gupta
этот тип установки предоставляет мне автоматические обновления по мере их выпуска и не добавляет ли это ppa, добавляя другие типы программного обеспечения, неосознанно, к моему серверу? - Rajat Gupta
Это устанавливает JDK: «Этот пакет предоставляет Oracle Java JDK 7 (который включает Java JDK, JRE и плагин для браузера Java). Однако вы можете не только установить Oracle JRE - PPA предоставляет только полный пакет Oracle JDK7 ». ссылка - kiri


Я ценю все предыдущие ответы. Я хочу добавить этот ответ, чтобы упростить вещи, которые www.webupd8.org сделать установку в 2-5 минут,

Эта установка включает:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer

Это все!! Теперь, чтобы проверить версию Java

java -version

Выход будет подобен

java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) Server VM (build 23.25-b01, mixed mode

Может появиться новая версия, и вы можете просто обновить ее с помощью этой команды:

sudo update-java-alternatives -s java-7-oracle

Настройка переменных среды

sudo apt-get install oracle-java7-set-default

Для получения дополнительной информации, проверьте Установите Oracle Java 7 в Ubuntu через репозиторий PPA,


16
2017-08-09 18:57



2-5 минут? это заняло 77 минут
Хорошее решение. Это должно быть выше. Время установки может занять более 5 минут в зависимости от скорости вашего интернета (загрузка ~ 70 МБ). Что касается установки Java-машины по умолчанию, я предпочитаю: sudo update-alternatives --config java, - landroni


Это решение предоставит вам чистые построенные пакеты, так же как они использовались для отправки с Ubuntu до появления Oracle.

Ответ

Сначала ответ, затем объяснение. Откройте терминал и скопируйте и вставьте следующие строки за строкой.

wget https://raw.githubusercontent.com/ladios/oab-java6/master/oab-java.sh -O oab-java.sh
chmod +x oab-java.sh
sudo ./oab-java.sh

Это создаст официальные пакеты sun-java6- * и сделает их доступными в программном центре. Если вам также нужны пакеты oracle-java7- *, запустите сценарий следующим образом:

sudo ./oab-java.sh -7

Теперь вы можете установить пакеты с вашим предпочтительным менеджером пакетов.

Объяснение

Когда Oracle изменила лицензию на распространение для Java, дистрибутивам Linux больше не разрешалось обновлять официальные пакеты. Пользователь Github rraptorr взял сценарий Debian, который использовался для создания пакетов до тех пор, и изменил его для работы с обновленными загрузками от Oracle. Теперь он предоставляет сценарии упаковки для SUN Java6 а также Oracle Java7,

oab.java.sh script - это просто оболочка, которая автоматически загружает текущую версию, создает пакеты и добавляет их в локальный репозиторий.

Дополнительные примечания

Пакеты, созданные и установленные с использованием этого метода, не будут получать обновления автоматически - только при повторном запуске скрипта. Вы можете обойти это, создав cronjob, который запускает этот скрипт на регулярной основе. Самый безопасный способ сделать это - использовать anacron, поставив скрипт в /etc/cron.daily,

wget https://raw.githubusercontent.com/ladios/oab-java6/master/oab-java.sh -O /root/oab-java.sh
chmod +x /root/oab-java.sh
ln -s /root/oab-java.sh /etc/cron.daily/oab-java

Теперь ваши официальные пакеты Java всегда будут обновлены.


15
2018-01-09 22:58



У меня было так много проблем с этим скриптом -_- - qodeninja
@qodeninja, вроде как? У меня никогда не было проблемы с этим скриптом. Выполнение 3-х строк выше будет определенно работать на каждой машине Ubuntu, если она не сломана. - mniess
У меня есть новый экземпляр linode ubuntu 10.04, и я пытался установить jre 7 с этим скриптом. Сценарий слишком долго зависает из-за отсутствия зависимостей. Затем мне пришлось остановить скрипт и самостоятельно установить зависимости с помощью apt-get. Даже после того, как все было установлено, сценарий все еще не прошел. - qodeninja
Скрипт действительно не делает ничего особенного. Похоже, что что-то не так с вашей коробкой. Я (и я) использовал это с 8.04 по 12.04 и никогда не испытывал проблем. Я просто попробовал это на моем сервере 10.04, который почти ваниль, и он работает. Как и следовало ожидать, потому что этот скрипт не делает больше, чем использовать старые скрипты debian build-scripts, которые использовали пакеты для sun-java * для debian (и ubuntu). - mniess
На Lubuntu 15.04 Это начинается хорошо, но через некоторое время я получаю debian/rules:67: recipe for target 'get-orig-source' failed make: *** [get-orig-source] Error 22 make: Leaving directory '/var/local/oab/src' 11678's retcode: 2 failed - rubo77