Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Gibt es eine Möglichkeit eine SQLite Datenbank in der JAR Datei, in der auch das Programm verpackt wird, zu verpacken und die zur Laufzeit zu benutzen?
Ja, den hab ich schon heruntergeladen. Das Problem ist wenn ich versuche auf die Datenbankdatei zuzugreifen: Wenn diese "irgendwo" auf der Festplatte liegt bekommt ich den Zugriff hin, sobald diese Datei aber im JAR verpackt wird, weiß ich nicht wie ich darauf zugreifen kann.
Was muß ich an die folgende Stelle mit dem "Test.db" schreiben? Die Test.db liegt im Package database.
Jein du kannst normalerweise aus einem Jar kein Klassen eines anderen Jars aufrufen, selbst wenn sich beide zusammen in ein und dem selben ÜberJar befinden. im unterschied zu WAR Archiven. .... Offiziel unterstützt das der URL Mechanismus der Jarloaders einfach nicht.
Das geht trotzdem halbwegs... aber dann nur mit diversen fiesen Tricks (URL rewriting). Aber auch nur mit reinen Java Klassen. Sobald eine native Lib dabei ist, hört der Spaß auf. Native Libs müssen in Filesystem ausgepepackt werden und können nur von dort geladen werden.
Also das billigste Verfahren ist einfach du unzippst das gesamt Jar irgendwo in ein Temp Verz. und lädst von dort die Klassen ganz Normal über das Filesystem ein.
Note: Alles was JDBC betrifft läuft dann im Scope deines Classloaders. Klassen die vom Classloader der JVM beimbootstrap geladen wurden haben evtl. keinen Zugriff auf deinen JDBC Scope. Das müsstes du dann mit Interfacen und Proxies lösen.
Glaube ihr habt ihn noch nicht ganz verstanden. Ihm gehts afaik gar nicht darum, auf irgendwelche Jar Dateien oder Java Klassen zuzugreifen, sondern auf die Datenbankdatei, die SQLLite benutzt.
Mein Vorposter hatte allerdings recht darin, dass die Manipulation von Dateien innerhalb eines JARs zur Laufzeit nicht möglich ist. Dir wird also nichts weiteres übrig bleiben, als die Datenbankdatei irgendwo außerhalb zu platzieren.