Ich versuche, Xerial Sample-Klasse in Eclipse mit SQLite zu arbeiten, aber ich bekomme immer den Fehler "ClassNotFoundException: org.sqlite. JDBC "java.lang.ClassNotFoundException: org.sqlite.JDBC Fehler in Sample.java Programm von Xerial
Ich habe die Datei sqlite-jdbc-3.7.2.jar von https://bitbucket.org/xerial/sqlite-jdbc/downloads heruntergeladen. Kopierte es in den lib-Ordner unter meinem Projekt "database_test" in Eclipse. Klicken Sie dann mit der rechten Maustaste auf Projekt-> Eigenschaften-> Java-Build-Pfad-> Registerkarte Bibliotheken-> JARs hinzufügen-> Wählen Sie die JAR-Datei aus. Ich versuche, diesen Code auszuführen, von Xerial hier: 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);
}
}
} }
Jede Seite, die ich gewesen gesagt hat die JAR-Datei auf Ihren Build-Pfad oder Klassenpfad hinzufügen, und ich glaube, ich habe das getan, aber nichts hat das Problem gelöst. Jede Hilfe wäre willkommen. Vielen Dank.
Angenommen, Sie Eclipse oder Netbeans verwenden - wenn 'DriverManager.getConnection()' ist nicht rot unterstrichen (Klasse/Methode nicht gefunden) und das Programm kompiliert dann fein seine (fast) sicher Sie davon ausgehen, Die * .jar-Datei wurde ordnungsgemäß importiert. Sie könnten versuchen, den libs-Ordner in Ihrem ** Files/Projects ** -Fenster auf der linken Seite zu erweitern und dann in die 'sqlite-jdbc-3.7.2.jar'-Datei zu gucken und nach 'org'-> suchen 'sqlite'->' JDBC' existiert. – phew
Danke für die Antwort. Ich benutze Eclipse, und ich habe die Jar-Datei geöffnet, die ich von Xerial heruntergeladen habe, und die Ordnerstruktur org/sqlite/JDBC.class und org/sqlite/JDBC.java sind beide in der JAR-Datei vorhanden. Das Ausführen von javac Sample.java gibt keine Fehler zurück. Auch in Eclipse ist nichts rot unterstrichen ... – user2646175
Haben Sie das Programm innerhalb der IDE ausgeführt oder haben Sie es zu '.jar' kompiliert und über die Konsole ausgeführt? BEARBEITEN: Ich erinnere mich auch, dass Eclipse Ihnen auch 'Externe JARs hinzufügen' anbietet (ich habe Eclipse zwar schon lange nicht mehr benutzt) - Sie könnten es auch versuchen, anstatt des relativen Pfades von der Root-Verzeichnis des Projekts. – phew