我的Java程序(我的第一个程序)似乎是hanging
在以下标准代码行中:
Class.forName("org.sqlite.JDBC");
Connection c = null;
Statement stmt = null;
c = DriverManager.getConnection("jdbc:sqlite:test.db");
c.setAutoCommit(false);
我收到了以下error
:
java.sql.SQLException: No suitable driver found for jdbc:sqlite:test.db
但是,在运行java应用程序时,我提供jdbc driver
的正确位置(我认为);
sudo java -cp ./jsoup-1.7.3.jar:./sqlite-jdbc-3.7.2.jar:. <AppName>
任何想法如何进行?
万分感谢
答案 0 :(得分:1)
sudo java -cp ./jsoup-1.7.3.jar:./sqlite-jdbc-3.7.2.jar:.
任何想法如何进行?万分感谢
是。我看到的两个主要问题。一,除非你有充分的理由,否则不要使用sudo
运行你的程序。如果你这样做,可能会导致你以后出现重大疼痛。
其次,您的类路径看起来不正确。 jar文件位于它上面。第一部分应该是搜索的路径,第二部分应该是要搜索的罐子。
java -cp ".:jsoup-1.7.3.jar:sqlite-jdbc-3.7.2.jar" ...
最后,我假设您从sqlite here和jsoup here下载并在当前目录中包含jar
个文件,如果它仍然无效,您应该检查这些文件是否正确。
$ sha1sum sqlite-jdbc-3.7.2.jar
cea9f7f8e6bcb580d953a8651fb8391640de0f85 sqlite-jdbc-3.7.2.jar
$ sha1sum jsoup-1.7.3.jar
ab1f22cadc2f8b514e55ba368f5128056fe304da jsoup-1.7.3.jar