【问题标题】:How to reference correct JDBC Driver from JAR file?如何从 JAR 文件中引用正确的 JDBC 驱动程序?
【发布时间】:2017-06-26 10:52:07
【问题描述】:

我使用 IntelliJ IDEA 作为我的 Java IDE。

我的 Java 项目使用 SQL 数据库,并且在 IntelliJ 中,程序运行良好。

但是,在编译为 JAR 文件时,我一直收到臭名昭著的 No suitable driver found for jdbc:sqlite 错误。

我确实将sqlite-jdbc-3.15.1.jar 库导入到我的项目中以供使用。无论我做什么,我都无法让 JAR 在 IDE 之外运行。

我尝试将 sqlite-jdbc-3.15.1.jar 文件放在我的 JAR 项目的“/lib”目录中(就像我所有其他库一样)。

这是我抛出错误的连接语句:

conn = DriverManager.getConnection("jdbc:sqlite:" + QUICKNOTES_USER_DB_FILENAME);

我找到了几个其他类似问题的解决方案,但它们似乎都与开发程序时的错误有关。我的问题是在部署之后。

【问题讨论】:

    标签: java sqlite jdbc intellij-idea jar


    【解决方案1】:

    简答

    将 JDBC 库添加到 CLASSPATH。

    更长的答案

    在 java 中至少有两个类路径很重要;编译时类路径和运行时类路径。 您的运行时类路径似乎有问题。

    当你到一个罐子里时, 工件(jar 文件)中不包含任何项目依赖项。 尝试运行 jar 时仍然需要依赖项, 因此 java 在运行时类路径中查找它们。

    确保在运行时类路径中列出了所需的 JDBC 库。 通常,这意味着您需要编辑 CLASSPATH 环境变量(在登录环境或脚本文件中)以包含所需的 jar 文件(或多个文件)。

    【讨论】:

      猜你喜欢
      • 2015-06-26
      • 1970-01-01
      • 1970-01-01
      • 2020-01-30
      • 1970-01-01
      • 2018-11-12
      • 2021-05-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多