由于我在参考库中添加了ucanaccess-2.0.3.jar (Eclipse露娜),所以在执行我的程序时会收到这个错误:
Exception in thread "main" java.lang.NoClassDefFoundError: Could not initialize class net.ucanaccess.jdbc.UcanaccessDriver引用了包含JT400连接的一行代码,如果我在项目中不包括ucanaccess,它就能工作,如下所示:
Class.forName("com.ibm.as400.access.AS400JDBCDriver");
Connection c = DriverManager.getConnection("jdbc:as400://"+systemi,user,pass);
return c;所以我很困惑..。我还有一个类可以执行ucanaccess连接,但是直到我按下按钮才会调用它:
Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
Connection c=DriverManager.getConnection("jdbc:ucanaccess://M:/FServer.mdb");
return c;这是图书馆的冲突吗?有人给它注射过精吗?
发布于 2014-03-27 17:54:07
您所链接的问题可能与mdb损坏有关,并且与您的NoClassDefFoundError问题完全无关。而且,与AS400JDBCDriver不可能出现特定的冲突问题,所以最好关注java.lang.NoClassDefFoundError。这意味着您的运行时环境类路径中存在不足。首先,您应该检查您是否在使用java 6或更高版本,类路径中是否存在所有UCanAccess依赖项(请参阅UCanAccess发行版的lib文件夹中的jars : jackcess、hsqldb、commons和commons),以及它们是否与类路径中已经存在的jars冲突(例如,存在一个旧的、不兼容的UCanAccess版本)。干杯,马可
https://stackoverflow.com/questions/22693653
复制相似问题