null

Oracle WebLogic Server 14c и JDK 1.7

Как правило в больших ИТ-средах системное окружение операционной системы серверов приложений представляет из себя огромный "зверинец" системного программного обеспечения, сопутствующих утилит и приложений, специализированных программ обеспечивая общую видимость работы ОДНОГО приложения с точки зрения бизнеса.

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

Именно в такой случай мы и вляполись в ходе развертывания приложений на новой платформе заказчика на ORACLE WebLogic Server 14c.

Проблема

Одно из сопутствующих приложений на JAVA, из класса legacy, работало максимум на JDK 1.7 и должно находиться на хосте с веб приложениями на WebLogic Server. Проблема в том, что более современный WebLogic 14 имеет требования :

Note:

Oracle WebLogic Server 14c (14.1.1.0.0) supports JDK version 1.8.0_241 or later, and 11.0.6 or later.

И усугубляется все тем, что системы Linux уже сконфигурирована и настроена со всем системным окружением и свежей java jdk 1.8, и собирать всё заного без гарантированного результата не целесообразно.

Путь решения

В нашем случае специфическое приложений на JAVA, из класса legacy, работающее максимум на JDK 1.7 имеет возможность задать путь JDK как параметр из системного окружения. А это значит, что можно поставить нужную Java JDK где-то рядом, и натравить на него.

Сократим Ваше время - ПАКЕТОМ не встанет JDK 1.7 на систему. Конфликт с установленным и используемым Oracle JDK1.8, выпиливать который на работоспособной системе.... сами понимаете не разумный путь.

Скачать старый JDK можно с Oracle.

Установили в отдельный путь РУКАМИ oracle JDK 1.7 и OPENJDK 1.7

# /usr/java/jdk1.7.0_80/bin/java -version
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)

Так как родной пакет Oracle JDK 1.8 никак не пострадал - система осталась в работоспособном живом состоянии.

В итоге на системе аж 4 JDK без конфликтов и с работающем зверинцем

# alternatives --list|grep java
java    manual  /usr/java/jdk1.8.0_291-amd64/bin/java
jre_1.8.0       auto    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.292.b10-1.el7_9.x86_64/jre
jre_openjdk     auto    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.292.b10-1.el7_9.x86_64/jre
libjavaplugin.so.x86_64 auto    /usr/lib64/IcedTeaPlugin.so
jre_1.7.0       auto    /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.261-2.6.22.2.0.1.el7_8.x86_64/jre

Ну а мы пошли деплоить дальше...