【发布时间】:2022-01-08 20:00:56
【问题描述】:
当我通过命令提示符运行它时,我一直在尝试在我的 java 程序中使用 JAR 文件(“sqlite-jdbc-3.7.2.jar”),但无论我尝试使用哪种方式指定它-classpath 标志,它不起作用。 通过我的命令提示符我跑了:
javac -classpath ".\sqlite-jdbc-3.7.2.jar" myProgram.java
然后:
java -classpath ".\sqlite-jdbc-3.7.2.jar" myProgram.java
而我的程序不断返回异常:
No suitable driver found for jdbc:sqlite:[My db file path]
我也尝试过像这样使用 -classpath 标志:
-classpath ".;.\sqlite-jdbc-3.7.2.jar"
但这会产生相同的结果。
请注意,我确实通过 Eclipse 使相同的程序与 JAR 文件一起工作,但我真的不喜欢使用 Eclipse。我想了解为什么它不能简单地使用命令提示符。
【问题讨论】:
-
我假设您在类路径中引用的路径确实存在。将不存在的文件或文件夹添加到类路径时,Java 不会发出错误。但是,您可以在代码中的某个位置添加
DriverManager.setLogWriter(/*something useful*/)以获得一些用于 Java 的 JDBC 驱动程序发现的调试日志记录。 -
感谢您的快速评论。实际上,一分钟前我从 GitHub 下载了最新的 xerial\sqlite-jdbc jar 文件,当使用 -classpath 标志指定该 jar 文件时,它现在神奇地工作了。谢谢。