java.sql.SQLException: 找不到适合 jdbc 的驱动程序

java.sql.SQLException: No suitable driver found for jdbc

我正在尝试 运行 使用 JDBC 进行一些查询并不断收到此错误:

Exception in thread "main" java.lang.IllegalStateException: error
        at com.mycompany.app.App.writer(App.java:195)
        at com.mycompany.app.App.main(App.java:19)
Caused by: java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/dbname

这是我的代码的相关部分:

public class App {
           writer();
}

public static void writer() {
        String url = "jdbc:mysql://localhost:3306/dbname
        String username = "root";
        String password = "password";
        try (Connection connection = DriverManager.getConnection(url, username, password)) {
            Statement st = connection.createStatement();
            ResultSet r= st.executeQuery("insert query here");
        } catch (SQLException e) {
            throw new IllegalStateException("error");
        }

    }
}

当我通过 Intellij Idea 运行 它工作时,但我需要它 运行 在服务器 运行ning Centos 上。
我已经尝试 运行 使用以下命令对其进行设置:

 javac -cp "filepath/mysql-connector-java-5.1.35-bin.jar" App.java  
 java -cp ".filepath/mysql-connector-java-5.1.35-bin.jar" App

我已经尝试 运行使用 maven 对其进行调试,包括

  <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.35</version>
    </dependency>

在 pom.xml 中仍然得到同样的错误

翻了很多网上的文章(和堆题)还是没找到解决办法

服务器是运行ning CentoOS 6.6,数据库是运行ning本地。

我正在使用:

java 版本“1.8.0_45” Java(TM) SE 运行时环境(build 1.8.0_45-b14) Java HotSpot(TM) 64 位服务器 VM(内部版本 25.45-b02,混合模式)

类 Unix 操作系统上类路径中的条目必须用 : 分隔。在.(表示当前目录)和jar的路径之间添加一个:

java -cp .:filepath/mysql-connector-java-5.1.35-bin.jar App

或者,您可以将 mysql-connector-java-5.1.35-bin.jar 放入以下目录 -

JAVA_HOME/jre/lib/ext 

如果您将 jar 放在此目录中,则不必使用命令将其添加到 classpath

您可以尝试使用 class.forName("qualified name of driver class") 加载驱动程序 class。如果您没有遇到 Maven 的 class 路径问题,这应该可以解决问题。看看 哪里 索引标签已从 pom 中删除并且它有效。