0

I'm encountering a ClassNotFoundException when trying to connect to a MySQL database in my Java program. Here's the error message I'm getting:

Exception in thread "main" java.lang.NoClassDefFoundError: java/sql/Driver
    at java.base/java.lang.ClassLoader.defineClass1(Native Method)
    at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1017)
    at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150)
    at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:862)
    at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:760)
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:681)
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
    at java.base/java.lang.Class.forName0(Native Method)
    at java.base/java.lang.Class.forName(Class.java:375)
    at hello/hello.world.main(world.java:8)
Caused by: java.lang.ClassNotFoundException: java.sql.Driver
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
    ... 12 more
Mark Rotteveel
  • 100,966
  • 191
  • 140
  • 197
  • Have you added the dependency to your code? – AngeLOL Aug 29 '23 at 05:10
  • Please provide enough code so others can better understand or reproduce the problem. – Community Aug 29 '23 at 08:32
  • 1
    The error in the title differs from the error in your question body. The error in the title is explained in the first duplicate. The error in the question body is due to using a modular project, but your `module-info.java` does not contain `requires java.sql;` (see also the second duplicate). – Mark Rotteveel Aug 29 '23 at 09:45

0 Answers0