Java JDBC未找到合适的驱动程序,即使.jar文件已添加到类路径和依赖项中

Java JDBC未找到合适的驱动程序,即使.jar文件已添加到类路径和依赖项中,java,android,mysql,jdbc,Java,Android,Mysql,Jdbc,我在安卓工作室做一个项目,其中包括一个MySQL数据库。 我正在尝试使用以下代码连接到它: package com.example.touristguide.dbanbindung; import com.example.touristguide.klassen.LocationData; import java.sql.*; import java.util.ArrayList; import java.util.List; public class DbConnection { p

我在安卓工作室做一个项目,其中包括一个MySQL数据库。 我正在尝试使用以下代码连接到它:

package com.example.touristguide.dbanbindung;
import com.example.touristguide.klassen.LocationData;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;


public class DbConnection {



private static final String url = "jdbc:mysql://censoredsqlhost.net:3306/dbname";
private static final String user = "user";
private static final String password = "password";

private static Statement stmt;
private static Connection conn;

public DbConnection() {

}

private static void getConn() {
    try {

        conn = DriverManager.getConnection(url,user,password);
        System.out.println("\n\n\n\n CONNECTION"+conn.getMetaData()+"\n\n\n\n CONNECTION");

    } catch (SQLException e) {

        // TODO Auto-generated catch block
        e.printStackTrace();

    }
/*
 Other Stuff
*/
}
但我得到了一个错误:

2020-01-16 18:20:47.612 5752-5752/com.example.touristguide W/System.err: java.sql.SQLException: No suitable driver found for jdbc:mysql://censoredsqlhost.net:3306/dbname
2020-01-16 18:20:47.613 5752-5752/com.example.touristguide W/System.err:     at java.sql.DriverManager.getConnection(DriverManager.java:594)
2020-01-16 18:20:47.613 5752-5752/com.example.touristguide W/System.err:     at java.sql.DriverManager.getConnection(DriverManager.java:219)
我已经将JDBC和MySQL连接器添加到类路径中,并将它们添加到依赖项中 我花了几个小时寻找解决方案,但每个解决方案都会导致相同的错误。 我还尝试了jdbc和mysql连接器的不同版本,但仍然没有

我是不是忽略了什么

尝试使用。您将看到一个带有“许可证”、“组织”等的表格,并查找“文件”字段,您将看到一个可单击的“jar”文件,该文件将自动为您下载连接器。如果在项目中使用“pom.xml”,则可以复制和粘贴maven依赖项,而无需下载jar文件

编辑:对不起,我没有看到这是一个Android项目。在gradle文件中添加此依赖项:

编译组:“mysql”,名称:“mysql连接器java”,版本:“8.0.18”

尝试使用。您将看到一个带有“许可证”、“组织”等的表格,并查找“文件”字段,您将看到一个可单击的“jar”文件,该文件将自动为您下载连接器。如果在项目中使用“pom.xml”,则可以复制和粘贴maven依赖项,而无需下载jar文件

编辑:对不起,我没有看到这是一个Android项目。在gradle文件中添加此依赖项:

编译组:“mysql”,名称:“mysql连接器java”,版本:“8.0.18”


不,仍然是同一个错误好的,试过了:编译组给我一个错误“Run Tasks:app:mergeDebugJavaResource”,消息是“发现多个文件具有独立于操作系统的路径‘META-INF/README’”。Android Studio还告诉我“compile”已弃用,应该用实现替换。是的,编译已弃用,你可以用实现来代替它,但我不确定它是否会有什么不同。如果您已将任何JAR添加到项目中,请尝试删除它们,并仅使用gradle文件中的依赖项生成项目。使用操作系统独立路径仍会出现上述错误。下面是我的依赖项的样子,也许我搞错了尝试删除这两个:实现项目(路径:':sqljdbc42')实现项目(路径:':mysql-connector-java-8.0.18')没有仍然是相同的错误好的,尝试过了:编译组给我一个错误“Run Tasks:app:mergeDebugJavaResource”和消息“不止一个文件被发现具有独立于操作系统的路径‘META-INF/README’”,Android Studio还告诉我“编译”“这是不推荐使用的,应该用实现替换。是的,编译是不推荐使用的,您可以用实现替换它,但我不确定它是否会有什么不同。如果您已将任何JAR添加到项目中,请尝试删除它们,并仅使用gradle文件中的依赖项生成项目。使用操作系统独立路径仍会出现上述错误。下面是我的依赖项看起来是什么样子,也许我搞砸了,试着删除这两个:实现项目(路径:':sqljdbc42')实现项目(路径:':mysql-connector-java-8.0.18')已经尝试过了。我只是在那件事上发现了ClassNotFoundException。不过我还没试过第二个。我将尝试itokay第二个给我一个错误:
java.lang.NoClassDefFoundError:解析失败:Lcom/mysql/cj/jdbc/Driver您真的不应该使用来自Android应用程序的JDBC驱动程序。使用直接数据库访问相对来说是不安全的,性能很差,而且通常不是一个好主意。您应该使用rest服务在应用程序和数据库之间进行调解。另外,据我所知,最新的MySQL Connector/J版本将无法在Android上运行,因为某些必需的类在Android中不可用。已经尝试过了。我只是在那件事上发现了ClassNotFoundException。不过我还没试过第二个。我将尝试itokay第二个给我一个错误:
java.lang.NoClassDefFoundError:解析失败:Lcom/mysql/cj/jdbc/Driver您真的不应该使用来自Android应用程序的JDBC驱动程序。使用直接数据库访问相对来说是不安全的,性能很差,而且通常不是一个好主意。您应该使用rest服务在应用程序和数据库之间进行调解。另外,据我所知,最新的MySQL Connector/J版本将无法在Android上运行,因为某些必需的类在Android中不可用。