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.
Step 1:
Copy sqlite library.
Step 2:
paste the library in 'WebContent/WEB-INF/lib' directory you can also do it by selecting 'lib' folder in eclipse and pressing Ctrl + V
Step 3:
Restart the server and hopefully problem should be fixed
One way that worked for me is to go to JRE System Library -> right clik -> build path -> configure build path -> add external jars -> select the jar and compile.
Thanks to user phew for the help/ideas.
I missed the obvious command line instructions on Xerial's site for the Sample program. To get the program to run from the command line, I had to copy the JAR file into the same folder as the .java program. Then run the following command:
java -classpath ".:sqlite-jdbc-(VERSION).jar" Sample
All the above solutions works well, when you are dealing with the desktop JAVA Application. In the case of WebAPP Application, following above solutions will not work. Actually it is the issue with your App server, that is you needed to add sqlite-jar under your WEB-INF/lib and then only you will be able to run your webapp successfully.
For doing so you can follow below steps:
Go to:
Project-> Properties-> Deployment Assembly-> Add-> Archives From File System -> Next -> Add
Navigate to the folder where you have your sqlite-jar, select it and hit OK.
Click Finish. OK.
Done, you should be able to run your app now.
Thanks
As said before, add the jar File to your Project.
For Android Studio / IntelliJ you just go this way:
File > Project Structure >
New Module >
Import .JAR/.AAR Package
Now select/add your .jar File and let IntelliJ do the rest.
or second way useful
your project can set the Classpath : Lib/sqlite-jdbc-3.8.11.2.jar