java.Sql.SQLException,无法加载类 net.ucanaccess.jdbc.UcanaccessDriver

Posted

技术标签:

【中文标题】java.Sql.SQLException,无法加载类 net.ucanaccess.jdbc.UcanaccessDriver【英文标题】:java.Sql.SQLException, Cannot load class net.ucanaccess.jdbc.UcanaccessDriver 【发布时间】:2021-01-21 06:01:33 【问题描述】:

我尝试使用 Ucanaccess 驱动程序在 Mulesoft 中连接我的 MS Access 数据库,但它引发错误无法加载类 net.ucanaccess.jdbc.UcanaccessDriver。我已经导入了所有必需的 JAR 并在 pom.xml 中添加了所需的依赖项,但它仍然给出了同样的错误。我已经附上了问题的所有必要细节。 Java 版本 - 8,Ucanaccess 驱动程序版本 - 5.0.1 任何进一步进行的建议或指导都会对我有所帮助。

错误堆栈跟踪

org.mule.runtime.api.connection.ConnectionException:无法从数据源获取连接 org.mule.runtime.api.connection.ConnectionException:无法从数据源获取连接 原因:org.mule.extension.db.api.exception.connection.ConnectionCreationException:无法从数据源获取连接 原因:java.sql.SQLException:尝试加载驱动程序时出错:net.ucanaccess.jdbc.UcanaccessDriver:无法加载类“net.ucanaccess.jdbc.UcanaccessDriver”:[ net.ucanaccess.jdbc.UcanaccessDriver, 无法加载类“net.ucanaccess.jdbc.UcanaccessDriver”:[ 类 'net.ucanaccess.jdbc.UcanaccessDriver' 没有区域 'domain/default/app/tooling-application-85e45b90-5bac-11eb-84c6-ccd9aca566c1' 的包映射。 无法加载类“net.ucanaccess.jdbc.UcanaccessDriver”:[ “net.ucanaccess.jdbc.UcanaccessDriver”类没有区域“/domain/default”的包映射。

数据库配置

Pom.xml 依赖项

外部罐子

【问题讨论】:

请不要将图片用于文本文件:meta.***.com/questions/285551/… 【参考方案1】:

看来您需要将 JDBC 驱动程序库作为共享库添加到 pom.xml 中。

有关如何配置,请参阅https://docs.mulesoft.com/mule-runtime/4.3/mmp-concept#configure-shared-libraries 的文档。

示例(您可能需要添加其他库):

<sharedLibraries>
    <sharedLibrary>
      <groupId>net.sf.ucanaccess</groupId>
      <artifactId>ucanaccess</artifactId>
    </sharedLibrary>
</sharedLibraries>

【讨论】:

感谢@aled 的回复。它解决了该错误,但它给出了另一个错误,即在进行连接测试时出现内部服务器错误... HTTP 500 请求失败 这意味着它可以工作,并且您遇到了与驱动程序相关的不同问题。我建议发布一个包含新错误的所有详细信息的新问题。 问题仍将保持不变..只有错误堆栈跟踪会改变..我应该如何将其详细说明为一个问题? @aled 将完整的错误日志和堆栈跟踪添加到问题中。

以上是关于java.Sql.SQLException,无法加载类 net.ucanaccess.jdbc.UcanaccessDriver的主要内容,如果未能解决你的问题,请参考以下文章

java.sql.SQLException:无法从底层数据库获取连接! — HSQLDB

java.Sql.SQLException,无法加载类 net.ucanaccess.jdbc.UcanaccessDriver

无法获得 JDBC 连接;嵌套异常是 java.sql.SQLException:无法加载 JDBC 驱动程序类 'org.hsql.jdbcDriver'

java.sql.SQLException:无法锁定表“更改”;用户当前正在使用

Apache Derby - java.sql.SQLException:无法启动数据库

java.sql.SQLException: 无法从套接字读取更多的数据