ClassNotFoundException:com.mysql.jdbc.Driver但它在类路径中

时间:2018-05-31 20:53:33

标签: java classnotfoundexception

enter image description here

I have this Exception but the Jar file are in the referenced libraries.

我不知道问题出在哪里。代码没问题,我在构建路径中添加了所有代码。 String DRIVER_CLASS_NAME =" com.mysql.jdbc.Driver&#34 ;;

final String DBMS = "jdbc:mysql";

final String SERVER="localhost";

final String DATABASE = "mapDB";

final int PORT=3306; 

final String USER_ID = "MapUser";

final String PASSWORD = "map";

Connection conn;//gestisce una connessione 

private void initConnection() throws DatabaseConnectionException {
    try {
        Class.forName(DRIVER_CLASS_NAME);/
    }catch(ClassNotFoundException e) {
        e.printStackTrace();
    }

    try {

        conn=(Connection)DriverManager.getConnection(DBMS + "://" + SERVER + ":" + PORT + "/" + DATABASE,USER_ID,PASSWORD);
    }catch(SQLException ex) {
        throw new DatabaseConnectionException();
    }
}

3 个答案:

答案 0 :(得分:1)

您的image表示您的课程路径中有db.PQRCorp.aggregate([ {$unwind:"$results"}, { $group: {_id: "$id", 'totalTermScore':{ $sum:"$results.score" } } }])

Maven Repository中查找该文件时,有mysql-connector-java-5.1.7-bin.jar个版本,但不是5.1.x

似乎5.1.7存在缺陷且已被收回。

尝试使用其他5.1.7版本,例如the latest,目前为5.1.x

答案 1 :(得分:0)

似乎有不同版本的MySQL JDBC连接器,如第二个打印所示。

可能存在对同一个lib的2个引用导致ClassNotFoundException,或者您的项目构建不是最新的。

我建议您在项目的引用上只保留一个版本的连接器,清除并再次构建项目。

答案 2 :(得分:0)

您是否尝试删除mysql-connector-java-5.1.7-bin.jar,只需保留mysql-connector-java-8.0.11.jar