Как проверить версию JDK в Oracle?

У нас есть класс Java в нашей базе данных Oracle и недавно одна строка кода в том, что класс java вызывает ошибку:

static BASE64Encoder B64 = new BASE64Encoder();

Мы видим ошибку

java.lang.ExceptionInInitializerError

в этой строке кода.

Я не уверен, что изменилось на стороне БД, поскольку у нас нет привилегий SYS или доступа к хосту.

Я хочу проверить версию JDK с нашей Oracle DB -

Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production.

Спасибо.

Ответ 1

SELECT  dbms_java.get_ojvm_property(PROPSTRING=>'java.version') FROM dual

Ответ 2

решение 1) на хосте базы данных

cd $ORACLE_HOME/jdk/bin
java -version

решение 2) создать функцию PL/SQL для возврата свойств системы Java

create function get_java_property(prop in varchar2)
return varchar2 is
language java name 'java.lang.System.getProperty(java.lang.String) return java.lang.String';

И запустите выбор для версии Java

select get_java_property('java.version') from dual;

решение 3) проверить ответ SteveK

Ответ 3

Сертифицированные версии:

База данных Oracle 12c встроена JVM поддерживает JDK 1.6 и 1.7

База данных Oracle 11g >= 11.2.0.4 встроена JVM поддерживает JDK 1.6

Вложенная база данных Oracle 11g JVM поддерживает JRE 1.5.

Встроенная JVM-база данных Oracle 10g поддерживает JRE 1.4.

Встроенная JVM-база данных Oracle 9i поддерживает JRE 1.3