Установка Java 7 в Ubuntu


223

Для установки Java я всегда использовал классический способ из терминала. Я хотел бы установить Java вручную. Я разместил папку JDK на столе и установил переменные среды (PATH, CLASSPATH и JAVA_HOME). Из терминала, если я печатаю, java -versionя напечатан

foralobo@ubuntu-vincy:~$ java -version
java version "1.7.0_21"
Java(TM) SE Runtime Environment (build 1.7.0_21-b11)
Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)

Но когда я пытаюсь установить Eclipse или NetBeans, система предупреждает, говоря, что на машине не установлен Java.

Чего не хватает для завершения ручной установки? (Ubuntu 13.04)


Я думаю, что вам пришлось бежать, update-alternativesчтобы сообщить Ubuntu, где находится его «новая» установка Java.
флоп


Ответы:


548

Этот ответ использовался для описания того, как установить Oracle Java 7. Он больше не работает с момента выпуска Oracle 7 с истекшим сроком действия и загрузки бинарных версий для версий с исправлениями безопасности за платным доступом. Кроме того, OpenJDK вырос и является более жизнеспособной альтернативой в настоящее время.

В Ubuntu 16.04 и выше Java 7 больше не доступна. Обычно лучше всего установить Java 8 (или 9).

sudo apt-get install openjdk-8-jre

или, если вам нужен компилятор, получите jdk:

sudo apt-get install openjdk-8-jdk

В Trusty самый простой способ установить Java 7 на данный момент - это установить пакет OpenJDK:

sudo apt-get install openjdk-7-jre

или, для JDK:

sudo apt-get install openjdk-7-jdk

Если вы специально ищете Java 7 в версии Ubuntu, которая больше не поддерживает ее, см. Https://askubuntu.com/questions/761127/how-do-i-install-openjdk-7-on-ubuntu-16- 04 или выше .


Добавлен совет @ brent-robinson о том, как устанавливать переменные окружения. Спасибо Брент!
флоп

3
после установки oracle-java7-set-default я не смог отобразить $ JAVA_HOME. Следовательно, установите $ JAVA_HOME вручную в .bashrc
Sumit Ramteke

1
@pekechis оба работают, apt-add-repository является символической ссылкой на add-apt-repository. Здесь говорится, что он был добавлен в 11.04: askubuntu.com/questions/38021/how-to-add-a-ppa-on-a-server
flup

3
@sumitramteke Я хочу выйти и снова войти. Переменные
окружения

3
Больше не работает. Oracle, кажется, удалил двоичные файлы. Смотрите мой ответ ниже.
Аникет Тхакур

56
sudo apt-get update
sudo apt-get install openjdk-7-jdk

и если у вас уже установлены другие версии JDK

sudo update-alternatives --config java

затем выберите версию Java 7.


2
ITYM "sudo apt-get update && sudo apt-get install openjdk-7-jdk"
dplass

4
Это самое простое решение, и оно не требует добавления дополнительных репо.
Стив Кук

2
Выбор между openjdk и версией, предоставленной Oracle.
флоп

49

В дополнение к ответу flup вы также можете запустить следующее, чтобы установить JAVA_HOME и PATH:

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

Дополнительная информация по адресу: http://www.ubuntuupdates.org/package/webupd8_java/precise/main/base/oracle-java7-set-default.


1
пожалуйста, добавьте это в качестве комментария к ответу @flup
Дэн

3
У меня пока нет репутации, чтобы комментировать ответы других людей
Брент Робинсон

34

Скачать Java- jdk<version>-linux-x64.tar.gzфайл с https://www.oracle.com/technetwork/java/javase/downloads/index.html .

Распакуйте этот файл куда хотите. лайк:/home/java (имя папки, созданной пользователем в домашнем каталоге).

Теперь откройте терминал. Установить путьJAVA_HOME=path к вашей папке jdk (откройте папку jdk, затем щелкните правой кнопкой мыши любую папку, перейдите в свойства, затем скопируйте путь, используя select all) и вставьте сюда.

Подобно: JAVA_HOME=/home/xxxx/java/JDK1.8.0_201

Сообщите Ubuntu, где находится наш JDK / JRE.

sudo update-alternatives --install /usr/bin/java java /home/xxxx/java/jdk1.8.0_201/bin/java 20000
sudo update-alternatives --install /usr/bin/javac javac /home/xxxx/java/jdk1.8.0_201/bin/javac 20000
sudo update-alternatives --install /usr/bin/javaws javaws /home/xxxx/java/jdk1.8.0_201/bin/javaws 20000

Скажите Ubuntu, что наша установка, т.е. jdk1.8.0_05, должна быть Java по умолчанию.

sudo update-alternatives --set java /home/xxxx/sipTest/jdk1.8.0_201/bin/java
sudo update-alternatives --set javac /home/xxxx/java/sipTest/jdk1.8.0_201/bin/javac
sudo update-alternatives --set javaws /home/xxxxx/sipTest/jdk1.8.0_201/bin/javaws

Теперь попробуйте:

$ sudo update-alternatives --config java

Есть 3 варианта для альтернативного Java (предоставление /usr/bin/java).

  Selection    Path                                  Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-6-oracle1/bin/java   1047      auto mode
  1            /usr/bin/gij-4.6                       1046      manual mode
  2            /usr/lib/jvm/java-6-oracle1/bin/java   1047      manual mode
  3            /usr/lib/jvm/jdk1.7.0_75/bin/java      1         manual mode

Нажмите клавишу ввода, чтобы сохранить текущий выбор [ *] или номер выбора типа: 3

update-alternatives: using /usr/lib/jvm/jdk1.7.0_75/bin/java to provide /usr/bin/java (java) in manual mode

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

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

Я видел этот текст в GIST, это был твой или скопированный / вставленный?
onaclov2000

скопируйте / вставьте сюда, поскольку я не нашел ничего из вышеперечисленного работающего :)
Абхиджит Башетти

1
Java по умолчанию или из репозитория не может быть установлена, но это сработало, решило проблему. Спасибо!
Арун

@AbhijitBashetti Если это было скопировано и вставлено откуда-то еще, я думаю, что было бы лучше добавить предложение, явно говорящее об этом, со ссылкой на первоисточник.
Ифурини

2
@lfurini: я уже упоминал об этом, если вы прочитали все комментарии ... У меня нет оригинальной ссылки ... Я добавил здесь причину ... чтобы она могла быть полезной для остальных, и им не нужно тратить время на его поиск ... Как будто я потратил много времени на то, чтобы сделать правильные шаги ... не хочу, чтобы другие вкладывали время в такие вещи ...
Абхиджит Башетти,

12

Я думаю, что вы должны тщательно продумать процедуру установки Java. Ниже приводится подробный процесс, который охватывает практически все возможные сбои.

Установить Java с помощью apt-get легко. Сначала обновите индекс пакета:

sudo apt-get update

Затем проверьте, если Java еще не установлена:

java -version

Если он возвращает «Программу Java можно найти в следующих пакетах», Java еще не установлена, поэтому выполните следующую команду:

sudo apt-get install default-jre

Вы в порядке до сих пор, как я предполагаю.

Это установит Java Runtime Environment (JRE). Если вам нужен Java Development Kit (JDK), который обычно необходим для компиляции Java-приложений (например, Apache Ant, Apache Maven, Eclipse и IntelliJ IDEA, выполните следующую команду:

sudo apt-get install default-jdk

Это все, что нужно для установки Java.

Установка OpenJDK 7:

Чтобы установить OpenJDK 7, выполните следующую команду:

sudo apt-get install openjdk-7-jre 

Это установит Java Runtime Environment (JRE). Если вам нужен Java Development Kit (JDK), выполните следующую команду:

sudo apt-get install openjdk-7-jdk

Установка Oracle JDK:

Oracle JDK является официальным JDK; однако, он больше не предоставляется Oracle как установка по умолчанию для Ubuntu.

Вы все еще можете установить его, используя apt-get. Чтобы установить любую версию, сначала выполните следующие команды:

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

Затем, в зависимости от версии, которую вы хотите установить, выполните одну из следующих команд:

Oracle JDK 7:

sudo apt-get install oracle-java7-installer

Oracle JDK 8:

sudo apt-get install oracle-java8-installer

3

Метод PPA больше не работает.

Хотя Oracle Java 6 и 7 не поддерживаются в течение долгого времени, они все еще были доступны для скачивания на сайте Oracle до недавнего времени.

Однако двоичные файлы были удалены около 10 дней назад (?), Поэтому установщики Oracle Java (JDK) 6 и 7, доступные в WebUpd8 Oracle Java PPA, больше не работают.

Oracle Java 6 и 7 теперь доступны только для тех, у кого есть учетная запись службы поддержки Oracle (которая не является бесплатной), поэтому я не могу поддержать это для пакетов PPA.

Источник: http://www.webupd8.org/2017/06/why-oracle-java-7-and-6-installers-no.html Дата: июнь 2017

На странице загрузки Oracle написано

Обновления для Java SE 7, выпущенные после апреля 2015 года, и обновления для Java SE 6, выпущенные после апреля 2013 года, доступны только для клиентов Oracle через службу поддержки Oracle (требуется вход в службу поддержки).

Java SE Advanced предлагает пользователям коммерческие функции, доступ к критическим исправлениям ошибок, исправлениям безопасности и общему обслуживанию ».

Мне пришлось скачать его из архивов Oracle - http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html

Для этого вам нужен аккаунт.


Это правильно, однако, я получил его полностью работая с ответом Абхиджита Башетти: stackoverflow.com/a/28874505/2161698
SebaGra

2

Ответ Flup - лучший, но он не сработал для меня полностью. Я должен был сделать следующее, чтобы заставить это работать:

  1. export JAVA_HOME=/usr/lib/jvm/java-7-oracle/jre/
  2. chmod 777 в папке
  3. ./gradlew build - Строительство Hibernate

1

Oracle Java 1.7.0 из пакетов .deb

wget https://raw.github.com/flexiondotorg/oab-java6/master/oab-java.sh
chmod +x oab-java.sh
sudo ./oab-java.sh -7
sudo apt-get update
sudo sudo apt-get install oracle-java7-jdk oracle-java7-fonts oracle-java7-source 
sudo apt-get dist-upgrade

Обходной путь для 1.7.0_51

Существует проблема 123 в настоящее время в автономной адресной книге и запрос извлечение

Вот исправленная версия:

wget https://raw.github.com/ladios/oab-java6/master/oab-java.sh
chmod +x oab-java.sh
sudo ./oab-java.sh -7
sudo apt-get update
sudo sudo apt-get install oracle-java7-jdk oracle-java7-fonts oracle-java7-source 
sudo apt-get dist-upgrade

0
Open Applicaction -> Accessories -> Terminal

Type commandline as below...

sudo apt-get install openjdk-7-jdk

Type commandline as below...

apt-cache search jdk

(Note: openjdk-7-jdk is symbolically used here. You can choose the JDK version as per your requirement.)

For "JAVA_HOME" (Environment Variable) type command as shown below, in "Terminal" using your installation path...

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk

(Note: "/usr/lib/jvm/java-7-openjdk" is symbolically used here just for demostration. You should use your path as per your installation.)

For "PATH" (Environment Variable) type command as shown below, in "Terminal" using your installation path...

export PATH=$PATH:/usr/lib/jvm/java-7-openjdk/bin

(Note: "/usr/lib/jvm/java-7-openjdk" is symbolically used here just for demostration. You should use your path as per your installation.)

Check for "open jdk" installation, just type command in "Terminal" as shown below

javac -version

0

Oracle, а также современные версии Ubuntu перешли на более новые версии Java. По умолчанию в Ubuntu 20.04 используется OpenJDK 11, что достаточно для большинства целей.

Если вам действительно это нужно для запуска устаревших программ, OpenJDK 8 также доступен для Ubuntu 20.04 из официальных репозиториев.

Если вам действительно нужна именно Java 7, лучше всего к 2020 году скачать дистрибутив Zulu. Если у вас есть права root, проще всего установить версию .DEB, в противном случае скачайте версию .ZIP.

https://www.azul.com/downloads/zulu-community/?version=java-7-lts&os=ubuntu&architecture=x86-64-bit&package=jdk

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.