Назад | Перейти на главную страницу

Как установить JDK 6 на 64-разрядную версию Solaris 10 sparc?

Шаги установки JDK6 для:

довольно просты, но:

Ответ ниже - это ответ сообщества, предназначенный для редактирования.

Есть ли у вас какие-либо комментарии / замечания, которые мы все должны знать при установке JDK на сервер Solaris10 sparc?

С 2009 г. (время моего первый ответ), Я обнаружил, что самораспаковывающиеся скрипты полностью совместимы с нестандартным путем (например, установка JDK в пользовательский $HOME/usr/local например, вместо системного пути /usr/local)

Последний Страница загрузки Oracle JDK списки:

Solaris SPARC - Self Extracting Binary        86.05 MB  jdk-6u26-solaris-sparc.sh
Solaris SPARC 64-bit - Self Extracting Binary 12.24 MB  jdk-6u26-solaris-sparcv9.sh

Вам нужно быть осторожным, если вы копируете их из Windows на свой сервер (с winscp например): вам нужно скопировать эти два sh скрипты как двоичный (или они не будут работать после копирования на сервер Unix).

Оказавшись на сервере, вам необходимо chmod 755 два .sh (второй нужен только если у вас есть 64-битный Solaris).
Выполните их оба (например, в $HOME/usr/local, как пользователь без каких-либо привилегий root), первый jdk-6u26-solaris-sparc.sh, то при необходимости jdk-6u26-solaris-sparcv9.sh.

Это создаст $HOME/usr/local/jdf1.6.0_26 в котором у вас есть полностью работающий JDK.

  • корневые права не требуются (в отличие от pkgadd)
  • переменная среды не изменена: вам нужно будет добавить $HOME/usr/local/jdf1.6.0_26/bin на ваш $PATH если вы хотите использовать именно этот JDK, но суть в следующем:
    эта установка не повлияет ни на какие из ваших текущих настроек среды.
    (Обратите внимание JAVA_HOME не установлен конечно, но в любом случае это никогда не происходит в процессе установки)

Обновление 2011: см. Мой обновленный ответ: больше не надо sudo pkgadd нужно.


Первый ответ в 2009 году:

Есть два метода установки JDK:

  • Самораспаковывающийся двоичный файл (сценарий оболочки)
  • Пакеты Solaris (pkgadd команда)

Поскольку самораспаковывающийся двоичный файл не предназначен для настройки для установки по нестандартному пути, я бы порекомендовал более поздний (пакеты).

Тебе надо скачать:

  • jdk-6u16-solaris-sparc.tar.Z (основной пакет, используется для 32-битной установки)
  • jdk-6u16-solaris-sparcv9.tar.Z (небольшой пакет, используется для 64-битной дополнительной установки)

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

$ mkdir jdk-6u16-solaris-sparc
$ mv jdk-6u16-solaris-sparc.tar.Z jdk-6u16-solaris-sparc
$ cd jdk-6u16-solaris-sparc
$ zcat jdk-6<update>-solaris-sparc.tar.Z | tar -xf -
$ cd ..
$ mkdir jdk-6u16-solaris-sparcv9
$ mv jdk-6u16-solaris-sparcv9.tar.Z jdk-6u16-solaris-sparcv9
$ cd jdk-6u16-solaris-sparcv9
$ zcat jdk-6<update>-solaris-sparcv9.tar.Z | tar -xf -

В документации не упоминается тот случай, когда вам нужна локальная установка (в локальной зоне) отдельно от глобального JDK, уже установленного в /usr/java (/usr недоступна для записи из локальной зоны).

'-R'опция pkgadd пригодится в этом случае.

$ cd jdk-6u16-solaris-sparc
$ sudo pkgadd -R /MY_REP -d . SUNWj6rt SUNWj6dev SUNWj6cfg SUNWj6man SUNWj6dmo
$ cd ../jdk-6u16-solaris-sparcv9
$ sudo pkgadd -R /MY_REP -d . SUNWj6rtx SUNWj6dvx SUNWj6dmx

Здесь JDK6 установлен под:

/MY_REP/usr/jdk/instances/jdk1.6.0

/MY_REP/usr/java -> jdk/jdk1.6.0_16/
/MY_REP/usr/jdk/jdk1.6.0_16 -> instances/jdk1.6.0/

Нет необходимости использовать «корневую оболочку» (что в любом случае «зло»), как указано в документации Sun:
а 'sudo root pkgadd' достаточно.