Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

java.lang.ClassNotFoundException: org.sqlite.JDBC error in Sample.java program from xerial

Tags:

java

sqlite

I am trying to get Xerial's Sample class to work in Eclipse with sqlite, but I keep getting the error "ClassNotFoundException: org.sqlite.JDBC"

I downloaded the sqlite-jdbc-3.7.2.jar file from https://bitbucket.org/xerial/sqlite-jdbc/downloads. Copied it into the lib folder under my project "database_test" in eclipse. Then right-clicked on the Project->Properties->Java Build Path->Libraries Tab->Add JARs->Select the jar file. I am trying to execute this code from Xerial found here: 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);
  }
}

} }

Every site I have been to has said add the jar file to your build path or class path and I believe I have done that, but nothing has solved the problem. Any help would be appreciated. Thanks.

like image 571
user2646175 Avatar asked Aug 06 '13 20:08

user2646175


1 Answers

you can add it by converting your project to maven and the dependency(from https://mvnrepository.com) to your pom.xml as:

</dependency>
    <!-- https://mvnrepository.com/artifact/org.xerial/sqlite-jdbc -->
    <dependency>
        <groupId>org.xerial</groupId>
        <artifactId>sqlite-jdbc</artifactId>
        <version>3.34.0</version>
    </dependency>
like image 133
kira kira Avatar answered Sep 29 '22 02:09

kira kira