java.lang.ClassNotFoundException: com.mysql.jdbc.Driver, хотя путь к классам правильный [duplicate]

0

Я получаю сообщение об ошибке java.lang.ClassNotFoundException: com.mysql.jdbc.Driver хотя я добавил my-sql-connector к пути сборки, и он также присутствует в classpath.

Я искал другие подобные вопросы о переполнении стека, большинство из которых предлагает добавить jar в classpath, который я уже сделал. Что может быть другой возможной проблемой?

Изображение 174551

DBUtil.java

package util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;

public class DBUtil {
    public static Connection getMySqlConnection() throws Exception {
        Class.forName("com.mysql.jdbc.Driver");
        Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/NotesStore", "root", "123");
        //System.out.println("Connection returned from dbutil");
        return con;
    }

    public static void cleanUp(Statement st, Connection con) {
        try {
            if (st != null) {
                st.close();
            }
            if (con != null) {
                con.close();
            }
        } catch (Exception e) {
            System.out.println(e);
        }
    }

}

.classpath

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/java-8-oracle">
        <attributes>
            <attribute name="owner.project.facets" value="java"/>
        </attributes>
    </classpathentry>
    <classpathentry kind="con" path="org.eclipse.jst.server.core.container/org.eclipse.jst.server.tomcat.runtimeTarget/Apache Tomcat v8.5">
        <attributes>
            <attribute name="owner.project.facets" value="jst.web"/>
        </attributes>
    </classpathentry>
    <classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>
    <classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
    <classpathentry kind="lib" path="/home/diksha/Downloads/mysql-connector-java-8.0.11/mysql-connector-java-8.0.11.jar"/>
    <classpathentry kind="output" path="build/classes"/>
</classpath>
  • 2
    Как у вас работает инструмент? Путь сборки используется только при сборке вашего проекта или при запуске его с помощью eclipse. И извините: если ваш путь к классу времени выполнения будет правильным, вы не столкнетесь с его проблемой.
  • 0
    @GhostCat время выполнения classpath было настоящей проблемой. Спасибо!
Теги:
database
jdbc

1 ответ

0

Попробуйте заменить "com.mysql.jdbc.Driver" на "com.mysql.cj.jdbc.Driver" потому что вы используете версию 8.0 драйвера.

  • 0
    по-прежнему получаю сообщение об ошибке java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver
  • 0
    В последнем (8.0.11) драйвере есть оба класса для обратной совместимости, поэтому это не поможет.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню