java-jdbc:sqlite keine passenden Treiber. classpath-Probleme denke ich

Ich bin mit ubuntu. Ich sqlite3 installiert und java über den synaptic package manager heruntergeladen und die sqlitejdbc-v056 jar.

Meine sqlite ist in Ordnung. Ich habe geschrieben einige java-code kompiliert, aber nicht ausgeführt. Ich benutzte ant zu kompilieren das Zeug und das funktionierte gut, wenn ich die jar im gleichen Ort wie build.xml.

Wenn ich versuche das Programm auszuführen (indem Sie sagen: java-Programm) heißt es: java.sql.SQLException: No suitable driver found for jdbc:sqlite:test.db

ist hier einige von den fehlerhaften code:

 Class.forName("org.sqlite.JDBC");
 Connection conn = DriverManager.getConnection("jdbc:sqlite:test.db");

Von dem, was ich gelesen habe, so weit ist es wohl ein problem mit meinem classpath, ich bin mir nicht wirklich sicher, wie es aber beheben. hier ist, was ich versucht habe:

  1. ablegen .jar im selben Verzeichnis wie mein Programm zusammengestellt wichtigsten Sachen
  2. ablegen .jar im selben Verzeichnis wie meine kompilierte Klasse verwendet, die das sql-Zeug
  3. versucht, mit der -classpath-option bei Aufruf von java aus dem terminal. Ich habe versucht, dies mit relativer Adressierung ersten, dann einen absoluten Pfad
  4. 3, aber mit wildcards, ie .../*.jar
  5. sudo gedit /etc/environment. es gab keine CLASSPATH, also legte ich diese in: CLASSPATH=".jar:/home/sheena/Java/lib/.jar:.:.*.jar:/home/sheena/Java/lib/"

Ich fühle mich wie ich bin aus Optionen.

auf einem separaten doch verwandten beachten, ich habe auch wirklich gekämpft, um zu bekommen, javac, um zu sehen, das Glas, während ich kompilieren wollte, hätte ich nicht die Ameise, die Sachen über den classpath richtig. Dieser Teil ist nicht so dringend als das Zeug oben, aber hier ist ein wenig von build.xml:

<path id="files-classpath">  
    <fileset dir="lib/" >  
        <include name="*.jar"/>  
    </fileset>  
</path> 

...

sind nur einige der Dinge, die ich versuchte.

Irgendwelche Ideen würde sehr geschätzt, hat das internet erstaunlich wenig Informationen über dieses Thema aus, was ich sehen kann...

  • Der Fahrer ist nicht verpackt in mehr als einer jar-Datei ist es? Auf Ihrem compile-Zeit-Pfad, den Sie haben "*.jar" - wildcards funktionieren nicht mit der " - classpath argument für java ist, so können Sie fügen Sie alle jars in das Verzeichnis manuell an den-classpath argument.
  • Ich denke, die Verbindung format-string falsch ist. Beispiele, die ich gesehen habe sind strukturiert wie jdbc:sqlite:/<Pfad zur db> also:jdbc: sqlite:/C:/tools/SQLite/cdr.db
InformationsquelleAutor Sheena | 2011-05-06
Schreibe einen Kommentar