У меня есть сервер RHEL7 с установленными Oracle Java 8 и Weblogic 12.
Java 8 была установлена с использованием rpm-пакета от RedHat. Weblogic был установлен с использованием установочного пакета и инструкций Oracle (у Redhat не было rpm). Во время установки Weblogic я указал путь символической ссылки как JAVA_HOME
, / usr / lib / jvm / java-oracle
.
Когда был установлен weblogic, цепочка символических ссылок была:
/ usr / lib / jvm / java-oracle
-> / etc / alternatives / java_sdk_oracle
-> /usr/lib/jvm/java-1.8.0- oracle-1.8.0.141-1jpp.1.el7_3.x86_64
.
Я попытался исправить установку Java 8 с обновления 141 до обновления 161, установив более новую версию RPM от RedHat. После этого Weblogic не запускался.
После некоторого исследования я обнаружил, что сценарий установки Weblogic разрешил символические ссылки и жестко запрограммировал цель, /usr/lib/jvm/java-1.8.0-oracle-1.8. 0.141-1jpp.1.el7_3.x86_64
в несколько файлов конфигурации в каталоге установки weblogic.
Установка обновления 161 для Java 8 удалила обновление 141.
Таким образом, похоже, что у Java 8 и Weblogic разные мнения о том, как найти Java.
Возможные решения:
Измените файлы конфигурации в установке Weblogic после исправления Java.
Удалите / переустановите Weblogic после исправления Java.
Не исправляйте java.
другое
Ни одно из трех первых решений не кажется очень хорошим.
Каков предпочтительный способ / передовая практика в отношении обновления / исправления java для Weblogic 12 на сервере Redhat? Есть ли способ лучше?
Никто не дал ответа, поэтому я просто опишу, что мы делаем.
Оказывается, WebLogic записывает путь к java как в установке промежуточного программного обеспечения, так и в домене.
Поиск файлов, содержащих ссылку на java:
find $MW_HOME -name commBaseEnv.sh
find $MW_HOME -name commEnv.sh
find $MW_HOME -name setNMJavaHome.sh
find $MW_HOME -name nodemanager.properties
find $DOMAIN_HOME -name setDomainEnv.sh
find $DOMAIN_HOME -name setNMJavaHome.sh
find $DOMAIN_HOME -name nodemanager.properties
MW_HOME
- это домашний каталог промежуточного программного обеспечения, родительский каталог для каталога wlserver
.
DOMAIN_HOME
- это домашний каталог для ваш домен WebLogic.
Затем мы обновили путь в полученных файлах конфигурации и заменили его на путь к программной ссылке с фиксированным местоположением на java, созданной Oracle java RPM.
Нам нужно делать это при создании нового домена или при установке новой версии WebLogic.
Мы использовали эту статью , чтобы выяснить, что нам нужно сделать.