Получение java.lang.NoClassDefFoundError: не удалось инициализировать исключение класса oracle.jdbc.OracleDriverJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Получение java.lang.NoClassDefFoundError: не удалось инициализировать исключение класса oracle.jdbc.OracleDriver

Сообщение Anonymous »

Я наблюдаю странное поведение при попытке доступа к базе данных с помощью драйверов JDBC. Вот фрагмент кода:

LOGGER.debug("driver is " + driver);
try {
Class.forName(driver);
LOGGER.debug("got driver");
} catch (Throwable t) {
LOGGER.debug("throwable getting driver " + driver);
t.printStackTrace(System.out);
throw t;
}


Когда я запускаю это, вот что я вижу в трассировке стека.

08:20:00.417 [main] DEBUG - driver is com.sybase.jdbc4.jdbc.SybDriver
08:20:00.604 [main] DEBUG - throwable getting driver com.sybase.jdbc4.jdbc.SybDriver
java.lang.NoClassDefFoundError: Could not initialize class oracle.jdbc.OracleDriver
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:398)
at java.sql/java.sql.DriverManager.isDriverAllowed(DriverManager.java:555)
at java.sql/java.sql.DriverManager.isDriverAllowed(DriverManager.java:547)
at java.sql/java.sql.DriverManager.getDrivers(DriverManager.java:449)
at java.sql/java.sql.DriverManager.getDrivers(DriverManager.java:426)
at com.sybase.jdbc4.jdbc.SybDriver.registerWithDriverManager(Unknown Source)
at com.sybase.jdbc4.jdbc.SybDriver.(Unknown Source)
at com.sybase.jdbc4.jdbc.SybDriver.(Unknown Source)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:315)
... my code


Итак, я вижу, что имя драйвера, которое я пытаюсь получить, — com.sybase.jdbc4.jdbc.SybDriver, что правильно, но по какой-то причине DriverManager ищет oracle.jdbc.OracleDriver.

Что происходит? Этот код работает хорошо уже много лет, и единственная важная информация, которую я могу вспомнить, это то, что я недавно обновил JDK на этом компьютере до Open JDK 11.

>java -version
openjdk version "11.0.2" 2019-01-15
OpenJDK Runtime Environment 18.9 (build 11.0.2+9)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+9, mixed mode)


Подробнее здесь: https://stackoverflow.com/questions/549 ... cle-jdbc-o
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Java.lang.NoClassDefFoundError: oracle/jdbc/pool/OracleDataSource — новый
    Anonymous » » в форуме JAVA
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • Java.lang.noclassdeffounderror: oracle/jdbc/pool/oracledatasource - новый
    Anonymous » » в форуме JAVA
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • Java.lang.noclassdeffounderror: oracle/jdbc/pool/oracledatasource - новый
    Anonymous » » в форуме JAVA
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Какое исключение мы получаем от SQL Server и драйвера jdbc Sybase точно так же, как мы получаем для драйвера Oracle JDBC
    Anonymous » » в форуме JAVA
    0 Ответы
    26 Просмотры
    Последнее сообщение Anonymous
  • Неустранимая ошибка: объявление CakeDC\OracleDriver\Database\OCI8\OCI8Connection::query должно быть совместимо с PDO::qu
    Anonymous » » в форуме Php
    0 Ответы
    21 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»