Установка openjdk-7-jre на ubuntu 10.04 - Пакет openjdk-7-jre не имеет кандидата на установку - программирование
Подтвердить что ты не робот

Установка openjdk-7-jre на ubuntu 10.04 - Пакет openjdk-7-jre не имеет кандидата на установку

Я пытаюсь установить openjdk-7 на моем ubuntu, но я получаю следующую ошибку:

$ sudo apt-get install openjdk-7-jre
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package openjdk-7-jre is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package openjdk-7-jre has no installation candidate

Я предполагаю, что мне не хватает каких-то репозиториев или что-то в этом роде, но я не смог найти ссылку где и что.

4b9b3361

Ответ 1

Недавно мне пришлось установить Java 7 на CentOS, openSUSE и Ubuntu, и после долгих раздумий и исследований, наконец, остановился на этом, который работает на всех трех вариантах:

  • Игнорировать (и удалять) любые JRE или JDK, связанные с вашим дистрибутивом. Они больше проблем, чем они того стоят, и всегда отстают от последних обновлений.
  • Загрузите JRE 7 (или JDK 7, если вы хотите разработать) из http://www.oracle.com/technetwork/java/javase/downloads/index.html.
    • Для JRE получите jre-xxx-linux-x64.tar.gz, если у вас есть 64-разрядная машина или jre-xxx-linux-i586.tar.gz, если 32-разрядная. Не беспокойтесь о RPM.
    • Для JDK получите jdk-xxx-linux-x64.tar.gz, если у вас есть 64-разрядная машина или jdk-xxx-linux-i586.tar.gz, если 32-разрядная версия.
  • Выполните следующие действия как root или используя sudo:
    • # tar -xzvf jdk-xxx-linux-x64.tar.gz(или в зависимости от того, который вы загрузили)
    • # mkdir/usr/java
    • # mv jdkx.x.x_xx/usr/java (или, если JRE, это будет извлеченный каталог JRE)
    • # ln -s/usr/java/jdkx.x.x_xx/usr/java/jdkx
    • # ln -s/usr/java/jdkx/usr/java/latest
    • # ln -s/usr/java/latest/usr/java/default
    • # ln -s/usr/java/default/bin/java/usr/bin/java
    • # ln -s/usr/java/default/bin/javac/usr/bin/javac
    • # ln -s/usr/java/default/bin/javah/usr/bin/javah
    • # ln -s/usr/java/default/bin/javadoc/usr/bin/javadoc
    • # ln -s/usr/java/default/bin/javaws/usr/bin/javaws

Очевидно, вам нужно будет заполнить некоторые пробелы здесь, но вы должны получить картину. В качестве рабочего примера, вот моя установка (обратите внимание, что для моих целей мне нужны и 64-разрядные, и 32-разрядные версии как Java 7, так и Java 6 JDK, так что их много):

# ls -al /usr/java/
total 24
drwxr-xr-x  6 root root 4096 Sep  2 11:02 .
drwxr-xr-x 14 root root 4096 Aug  9 22:14 ..
lrwxrwxrwx  1 root root   16 Aug 26 20:05 default -> /usr/java/latest
drwxr-xr-x  8 root root 4096 Sep  2 10:52 jdk1.6.0_35
drwxr-xr-x  8 root root 4096 Sep  2 10:52 jdk1.6.0_35-32
drwxr-xr-x  8 root root 4096 Sep  2 10:52 jdk1.7.0_07
drwxr-xr-x  8 root root 4096 Sep  2 10:52 jdk1.7.0_07-32
lrwxrwxrwx  1 root root   11 Sep  2 10:54 jdk6 -> jdk1.6.0_35
lrwxrwxrwx  1 root root   14 Sep  2 10:54 jdk6-32 -> jdk1.6.0_35-32
lrwxrwxrwx  1 root root   11 Sep  2 10:54 jdk7 -> jdk1.7.0_07
lrwxrwxrwx  1 root root   14 Sep  2 10:54 jdk7-32 -> jdk1.7.0_07-32
lrwxrwxrwx  1 root root    4 Sep  2 10:55 latest -> jdk7
# ls -al /usr/bin/java*
lrwxrwxrwx 1 root root 26 Aug 26 20:05 /usr/bin/java -> /usr/java/default/bin/java
lrwxrwxrwx 1 root root 27 Aug 26 20:05 /usr/bin/javac -> /usr/java/default/bin/javac
lrwxrwxrwx 1 root root 29 Aug 26 20:05 /usr/bin/javadoc -> /usr/java/default/bin/javadoc
lrwxrwxrwx 1 root root 27 Aug 26 20:07 /usr/bin/javah -> /usr/java/default/bin/javah
lrwxrwxrwx 1 root root 28 Aug 26 20:05 /usr/bin/javaws -> /usr/java/default/bin/javaws
# java -version
java version "1.7.0_07"
Java(TM) SE Runtime Environment (build 1.7.0_07-b10)
Java HotSpot(TM) 64-Bit Server VM (build 23.3-b01, mixed mode)

Ответ 2

на ubuntu lucid 64-bit, мне нужно было добавить эту ссылку в цепочку:

ln -s /usr/java/latest /usr/java/default

Ответ 3

То, как Oracle становится ограничительным в отношении Java, имеет альтернативу, это просто хорошо. Я думаю, openjdk довольно приятный. Установка его на дебианских системах, таких как Ubuntu, безболезненна. Используйте apt-get следующим образом:

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

Обновление требуется, если ваши кеши/метаданные apt-get не обновляются с последними изменениями репозиториев, которые включают openjdk-7. Логическая установка pacakge openjdk-7-jre также должна работать тогда, если ваше распределение не очень старое.