ClassNotFoundException:org.sqlite.JDBC

问题描述 投票:0回答:4

我正在尝试使用 sqlite 为 Android 应用程序设置一个简单的数据库,但出现以下错误:

java.lang.ClassNotFoundException: org.sqlite.JDBC
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:171)
    at testDB.main(testDB.java:16)

这是我的代码:

public class testDB {
    public static void main(String args[]) {
        Connection c = null;
        try {
            Class.forName("org.sqlite.JDBC");
            c = DriverManager.getConnection("jdbc:sqlite:/Users/Dropbox/csProject/test.db", "", "");
        } 
    }

我已在库中添加了 sqlite-jdbc4-3.8.2-SNAPSHOT.jar,并且我还尝试在我的主目录中创建路径,但仍然遇到相同的错误..

java sqlite jdbc
4个回答
1
投票

您必须将 .jar 添加到您的项目中。您只需打开 Eclipse,右键单击 .jar 文件,然后添加到项目即可。


1
投票

您可以直接将 sqlite-jdbcXXX.jar 添加到您的 tomcat/lib 中。


0
投票

就我而言,我使用的是 gradle 并且需要添加

dependencies {
    implementation 'org.sqlite:sqlite-jdbc:3.25.2'
}

0
投票

对我来说,在 intelliJ 中添加 .jar 文件的路径有帮助:

  1. 转到文件->项目结构->SDK
  2. 选择类路径选项卡
  3. 选择您的 SDK(可能是列表中的第一个)
  4. 单击“+”图标并添加您的 .jar

并且不再需要添加一些代码,例如,一切正常

        try{
        Class.forName("org.sqlite.JDBC");
    }catch(Exception e){
        ...
    }

我认为问题是由jar注册问题引起的,而不是由延迟包加载引起的

© www.soinside.com 2019 - 2024. All rights reserved.