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

标签 java sqlite

我的 Java 程序(我的第一个程序之一)似乎卡在以下标准代码行:

    Class.forName("org.sqlite.JDBC");

    Connection c = null;
    Statement stmt = null;
    c = DriverManager.getConnection("jdbc:sqlite:test.db");
    c.setAutoCommit(false);

我收到以下错误:

java.sql.SQLException: No suitable driver found for jdbc:sqlite:test.db

但是,在运行 java 应用程序时,我提供了 jdbc 驱动程序 的正确位置(我认为);

sudo java -cp ./jsoup-1.7.3.jar:./sqlite-jdbc-3.7.2.jar:. <AppName>

知道如何继续吗?
一百万谢谢

最佳答案

sudo java -cp ./jsoup-1.7.3.jar:./sqlite-jdbc-3.7.2.jar:.

any idea how to proceed? thanks a million

是的。我看到两个主要问题。第一,除非您有充分的理由,否则不要使用 sudo 运行您的程序。如果您这样做,以后可能会给您带来严重的痛苦。

其次,您的类路径看起来不正确。 jar 文件位于其上。第一部分应该是搜索路径,第二部分是要搜索的 jar。

java -cp ".:jsoup-1.7.3.jar:sqlite-jdbc-3.7.2.jar" ...

最后,我假设您是从 sqlite here 下载的和 jsoup here并将 jar 文件放在当前目录中,如果仍然无法正常工作,您应该检查这些文件是否正确。

$ sha1sum sqlite-jdbc-3.7.2.jar 
cea9f7f8e6bcb580d953a8651fb8391640de0f85  sqlite-jdbc-3.7.2.jar
$ sha1sum jsoup-1.7.3.jar 
ab1f22cadc2f8b514e55ba368f5128056fe304da  jsoup-1.7.3.jar

关于java.sql.SQLException : No suitable driver found for jdbc:sqlite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47743152/

相关文章:

mysql - 从数据透视表中检索与所有结果匹配的记录

sql - 为什么 SQLite 不使用我的索引进行排序

java - 在 tomcat 生产服务器上编辑代码时如何以及何时清理和重新启动

java - 在 Hibernate-Envers 中如何使实体的早期修订成为最新修订

java - 为什么在 restTemplate.exchange 与 httpMethod.POST 之后调用时 HttpStatusCodeException.getResponseBodyAsString() 为空

string - SQLite选择字符串相等,其中值与列名相同?

python - 将值从下拉菜单传递到 Flask 模板

qt - 如何将sqlite驱动交付给最终用户?

java - 当我尝试在Android SQLite数据库中添加新值时,我的应用程序退出

java.lang.IllegalArgumentException : Unable to locate Attribute with the the given name