Почему я получаю сообщение java.lang.NoClassDefFoundError: java/sql/Driver при использовании специального загрузчика клаJAVA

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

Сообщение Anonymous »

Это работает с Java 8:

Код: Выделить всё

public class Test {
public static void main(String[] args) throws Exception {
URLClassLoader loader = new URLClassLoader(new URL[0], null);
System.out.println("" + loader.loadClass("java.sql.Driver"));
}
}
Но в Java 17 выдается исключение ClassNotFoundException:

Код: Выделить всё

Exception in thread "main" java.lang.ClassNotFoundException: java.sql.Driver
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:592)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
at Test.main(Test.java:16)
Отличная диаграмма, объясняющая загрузчики классов (Java 9+):
https://medium.com/@wakefulinsomnia/how-does-java- classloader-system-work-82eaf378f73b
Связанные/похожие проблемы:

Подробнее здесь: https://stackoverflow.com/questions/787 ... using-a-cu
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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