我正在尝试让Xerial的示例类在Eclipse中工作,但是我一直得到错误"ClassNotFoundException: org.sqlite.JDBC“
我从https://bitbucket.org/xerial/sqlite-jdbc/downloads下载了sqlite 3.7.2.jar文件。将其复制到eclipse中我的项目"database_test“下的lib文件夹中。然后右键单击Project->Properties->Java >Libraries->Add>选择jar文件。我正在尝试执行以下Xerial的代码:https://bitbucket.org/xerial/sqlite-jdbc#markdown-header-usage
// load the sqlite-JDBC driver using the current class loader
Class.forName("org.sqlite.JDBC");
Connection connection = null;
try
{
// create a database connection
connection = DriverManager.getConnection("jdbc:sqlite:sample.db");
Statement statement = connection.createStatement();
statement.setQueryTimeout(30); // set timeout to 30 sec.
statement.executeUpdate("drop table if exists person");
statement.executeUpdate("create table person (id integer, name string)");
statement.executeUpdate("insert into person values(1, 'leo')");
statement.executeUpdate("insert into person values(2, 'yui')");
ResultSet rs = statement.executeQuery("select * from person");
while(rs.next())
{
// read the result set
System.out.println("name = " + rs.getString("name"));
System.out.println("id = " + rs.getInt("id"));
}
}
catch(SQLException e)
{
// if the error message is "out of memory",
// it probably means no database file is found
System.err.println(e.getMessage());
}
finally
{
try
{
if(connection != null)
connection.close();
}
catch(SQLException e)
{
// connection close failed.
System.err.println(e);
}
}
}}
我去过的每个站点都说过,将jar文件添加到构建路径或类路径中,我相信我已经这样做了,但是没有解决问题。任何帮助都将不胜感激。谢谢。
发布于 2013-08-09 15:26:37
感谢用户的帮助/想法。
我错过了明显的Xerial上示例程序的命令行指令。为了让程序从命令行运行,我必须将JAR文件复制到与.CLASS文件相同的文件夹中。然后运行以下命令:
java -classpath ".:sqlite-jdbc-(VERSION).jar" Sample
引号内有多个路径,在Unix下通过冒号(:
)分隔,在Windows下通过分号(;
)分隔。点作为路径之一是重要的-仅仅命名JAR文件是不够的。对Windows的全面调用将是:
"%JAVA_HOME%\bin\java.exe" -cp "sqlite-jdbc-(VERSION).jar;." Sample
注意分号而不是冒号。路径的顺序并不重要,-cp
和-classpath
一样,只是比较短。
发布于 2021-02-04 15:59:14
您可以将项目转换为maven并将依赖项(从https://mvnrepository.com)转换为pom.xml
,如下所示:
</dependency>
<!-- https://mvnrepository.com/artifact/org.xerial/sqlite-jdbc -->
<dependency>
<groupId>org.xerial</groupId>
<artifactId>sqlite-jdbc</artifactId>
<version>3.34.0</version>
</dependency>
发布于 2017-07-13 22:26:16
当您处理桌面JAVA应用程序时,上述所有解决方案都工作得很好。在WebAPP应用程序的情况下,以下解决方案将无法工作。实际上,这是应用程序服务器的问题所在,您需要在webapp /lib中添加sqlite,然后只有您才能成功地运行webapp。
为此,您可以执行以下步骤:
请转至:
项目->属性->部署程序集-> Add->档案来自文件系统-> Next -> Add
导航到拥有sqlite的文件夹,选择它并点击OK。
点击Finish。好的。
完成后,你现在应该可以运行你的应用程序了。
谢谢
https://stackoverflow.com/questions/18089952
复制相似问题