![](/img/trans.png)
[英]java.lang.NoClassDefFoundError: org/apache/commons/lang/builder/CompareToBuilder
[英]Exception in thread “main” java.lang.NoClassDefFoundError: org/apache/commons/lang/builder/CompareToBuilder
package myJavaPrograms;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class AccessDBFiles {
public static void main(String[] args) throws SQLException {
Connection conn=DriverManager.getConnection(
"jdbc:ucanaccess://C:\\TESTFILE\\Database11.accdb");
Statement s = conn.createStatement();
ResultSet rs = s.executeQuery("SELECT * FROM myTable");
while (rs.next()) {
System.out.println(rs.getString(1));
}
}
我在线程main中得到异常,作为线程“ main”中的异常java.lang.NoClassDefFoundError:org / apache / commons / lang / builder / CompareToBuilder
![]()
我看到您使用的是纯JDBC驱动程序UCanAccess。 这种情况下,您必须加载此驱动程序:
Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
另外,您可以像这样加载JDBC / ODBC驱动程序类:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
在这种情况下,URL格式如下:
jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=myDB.mdb;
另外,不要忘记关闭资源:ResultSet,Statement和Connection。
UCanAccess使用Jackcess,而Jackcess使用commons-lang
(v2.x),而不是commons-lang3
。 UCanAccess所需的所有依赖项都包含在UCanAccess发行版的lib
文件夹(.bin.zip文件)中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.