1

我正在将Eclipse 项目从 Windows 迁移到 Mac。出于某种原因,我在 MAC 中加载 SQLite JDBC 驱动程序时遇到了类路径问题。Windows 副本是可以的。

    Exception in thread "main" org.hibernate.service.classloading.spi.ClassLoadingException: Specified JDBC Driver org.sqlite.JDBC class not found  at org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl.configure(DriverManagerConnectionProviderImpl.java:107)

这是我所做的:

  1. 显示 System.getProperty("java.class.path") - 结果在 PC 和 MAC 之间完全相同。导入相同的 JAR 和版本,没有多余的也没有丢失。

  2. 最初我从 Maven 本地存储库中引用 sqlite。我取出实际的 sqlite-jdbc-3.7.2.jar,将它移到某个地方,并在构建路径中直接引用它。但问题依然存在。

几点观察:

在 Windows 中,键入“org.sqlite”。在代码中给了我一堆自动完成选项,而在 Mac 中,它没有给出任何东西。

其他 JAR 似乎可以很好地导入(例如,我有一个 JodaTime jar,它工作得很好)

这是一个类路径问题,还是我需要 SQLite-JDBC 的 Mac 发行版?我在他们的网站上没有看到任何特定的罐子。我当前的副本是通过 Maven 依赖项下载的。

提前致谢。

4

1 回答 1

0

问题已解决。

我只是用来自 xerial.org 的新副本替换了我当前的 JAR,并且它起作用了。

我从 Maven 依赖项下载获得的初始 JAR 已损坏,或者某些文件权限阻止 JVM 访问 JAR 的内容。

于 2012-12-02T08:37:53.437 回答