Как удалить java jdk6 и jre6 из ОС Solaris 11 x86? и установить java7? Как установить путь и путь к классу?

3 ответа3

2

Лично я нашел, что лучше не трогать Java, который используется ОС. Пусть он живет своей жизнью.

Я просто устанавливаю пакеты tar.gz с сайта Java для загрузки Oracle в каталог, например /java . Недостатком является то, что таким образом я не использую механизм упаковки (IPS), но, с другой стороны, он дает мне полный контроль, и я могу установить столько JRE или JDK, сколько захочу. Если вы используете пакеты tar.gz вы на самом деле не устанавливаете, вы просто распаковываете архив в каталог. Мне нравится это за его простоту и потому что это определение не навязчиво.

В качестве примера мой каталог /java выглядит так:

jdk1.7.0_05
jdk1.7.0_09
jdk1.7.0_17
jdk1.7.0_67
jdk1.8.0_11
jdk7 -> jdk1.7.0_67
jdk8 -> jdk1.8.0_11
jre -> jre1.7.0_67
jre1.6.0_32
jre1.7.0_05
jre1.7.0_17
jre1.8.0_11
jre6 -> jre1.6.0_32
jre7 -> jre1.7.0_67
jre8 -> jre1.8.0_11

Другими словами: множество каталогов, представляющих JRE или JDK, которые я установил (читай: распаковал) за эти годы. Имена каталогов фактически создаются сами при распаковке. Как видите, я использую символические ссылки для централизации обработки версий.

Если у меня есть приложение, которое я хотел бы использовать JRE7, я бы просто удостоверился, что я правильно установил переменную PATH перед запуском приложения. Скажем, например:

export PATH="/java/jre7/bin:${PATH}"

Это убедится, что мое приложение использует Java 7.

Вы спрашиваете также о classpath. Этот вопрос не имеет ничего общего с ядром Java. После того, как вы правильно установили PATH Java автоматически знает, где найти его основные jar-файлы. Причина, по которой вам обычно требуется установить classpath, заключается в собственных требованиях вашего приложения, а не в среде выполнения Java.

2
pkg uninstall jdk-6
pkg install jdk-7

Примечание: "Solaris 12" не выпущен.

1

Вы не можете удалить JDK/JRE, которые используются приложениями ОС. Период. Но вы можете

  1. обновить или понизить его
  2. установить / удалить более новую семейную версию

например, в Solaris 11/11 в ОС установлена JRE6, а несколько установленных приложений используют JRE6. Вы НЕ МОЖЕТЕ удалить это. Вы можете обновить его до более высокой версии 6. В этом случае вы также можете установить или удалить JRE7 или 8 с IPS. Добавление только JRE7 не меняет приложений, которые все еще зависят от JRE6.

Если вы обновите ОС (например, «pkg update --accept»), это, вероятно, обновит все приложения, которые также используют JRE. Теперь вы все должны полагаться на JRE7. Когда это происходит, вы больше не можете удалить 7 (которое установлено обновление), но вы можете обновить его до более поздней версии 7. Вы также можете установить / удалить JRE8, так как он не привязан к системе.

Это верно для любой версии Solaris 11 и выше (да 12 тоже) у вас есть.

Кстати, чтобы понизить версию JRE, вы обновляете ее - вы указываете на предыдущую версию и обновляете ее до этой версии. Если у вас есть хранилище с 7u45 и 7u60, то при обновлении у вас есть 7u60. Если вы хотите вернуться к 7u45, укажите это так

pkg update pkg://solaris/runtime/java/jre-7@1.7.0.45

Кстати, установка пакетов SVR4 (pkgadd) на Solaris 11 и выше для Java НЕ поддерживается. IPS является предпочтительным и поддерживаемым способом установки Java в вашей системе. Если вам нужно несколько версий семейства, следует использовать .gz или другие сжатые пакеты и поместить их в другое место.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .