java.sql.SQLException:找不到适合jdbc的驱动程序
我正在尝试使用JDBC运行一些查询,并不断出现以下错误:java.sql.SQLException:找不到适合jdbc的驱动程序,java,mysql,maven,jdbc,centos,Java,Mysql,Maven,Jdbc,Centos,我正在尝试使用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 driv
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运行它时,它可以工作,但我需要它在运行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>
mysql
mysql连接器java
5.1.35
在pom.xml中,仍然会得到相同的错误
我在网上浏览了很多文章(和一堆问题),但仍然找不到解决方案
服务器正在运行CentoOS 6.6,数据库正在本地运行
我正在使用:
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(“驱动程序类的限定名”)
加载驱动程序类。如果您没有在maven中遇到类路径的问题,那么这应该可以解决这个问题。看看哪里
索引标记已从pom中删除,并且正常工作。您使用的是什么版本的Java?我将其添加到主目录中post@RichSala你确定JDBC驱动程序的jar路径是正确的吗?显然不是lol。谢谢,它成功了!我真的需要它在maven中工作,但我可能会想出来。这解决了问题,但就像用火焰喷射器杀死一只虫子一样。