gpt4 book ai didi

java.lang.ClassNotFoundException : org. sqlite.JDBC Androidstudio Java 模块

转载 作者:塔克拉玛干 更新时间:2023-11-02 18:51:45 24 4
gpt4 key购买 nike

我不知道(太笨了),为什么我的应用程序在运行时找不到 jdbc 类:

Exception in thread "main" java.lang.ClassNotFoundException: org.sqlite.JDBC

你有什么提示吗?此 repo 中的完整简化用例:https://bitbucket.org/solvapps/jdbcapp

我在我的 Androidstudio 项目中添加了一个名为“维护”的模块,用于维护不应包含在应用程序中的内容。 (我已经使用另一个应用程序完成了此操作)。

enter image description here

我的维护gradle:

apply plugin: 'java'

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
}

sourceCompatibility = "1.8"
targetCompatibility = "1.8"

repositories {
mavenCentral()
}


dependencies {
compile 'org.xerial:sqlite-jdbc:3.16.1'
compile 'commons-net:commons-net:3.3'
compile 'org.zeroturnaround:zt-zip:1.11'
compile 'org.zeroturnaround:zt-zip:1.11'
compile 'org.apache.commons:commons-lang3:3.5'
}

同步后,我在外部库中看到了 jar。

enter image description here

我的代码,不是红色的:

 public static void connect(String language, boolean readonly) throws SQLException, ClassNotFoundException, IOException {

// Hole DBPath
String dbpath = Constants.getDbName(language);

Class.forName("org.sqlite.JDBC");
SQLiteConfig config = new SQLiteConfig();

if (readonly){
config.setReadOnly(true);
}else{
config.setReadOnly(false);
}

connection = DriverManager.getConnection("jdbc:sqlite:" + dbpath,config.toProperties());
}

错误:

Exception in thread "main" java.lang.ClassNotFoundException: org.sqlite.JDBC
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at solveraapps.maintain.DbService.connect(DbService.java:24)

最佳答案

try{  
Class.forName("com.mysql.jdbc.Driver");
Connection con;
con=DriverManager.getConnection("jdbc:mysql://localhost:8080/DBName","root","root");
//here DBName is database name, root is username and password
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery("select * from Table_name");
//Table_name is Table Name Which Must Exist IN Your Database
while(rs.next())
System.out.println(rs.getInt(1)+" "+rs.getString(2)+" "+rs.getString(3));
con.close();
}catch(Exception e){ System.out.println(e);}
}

您必须将 mysql-connector.jar 文件添加到您的库中,您可以从 Here 下载文件

关于java.lang.ClassNotFoundException : org. sqlite.JDBC Androidstudio Java 模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49605851/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com