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.
ich habe ein Programm geschrieben, dass auf eine Datenbank zugreift. Den Treiber dafür hab ich in Eclipse importiert.
Wie schaff ich es nun dass mein Programm ohne Eclipse, eigenständig läuft, also als *.jar und wie binde ich dann den jdbc Datenbanktreiber ein?
Ich bekomm eine ClassnotFound Exception, weil der Treiber nicht gefunden wird.
Aus einer Configdatei wird der Treiber geladen (oracle.jdbc.driver.OracleDriver) mit Class.forName(treiber). In Eclipse klappt das auch weil ich dort den Treiber importiert habe.
Aber wie läuft das im JarFile ausserhalb? Wo sucht er nach dem Treiber?
Wahrscheinlich im JarFile, aber ich will dass der Treiber irgendwo extern liegt...
Geth das nicht einfacher???
Es muss doch irgendwie möglich sein einen Treiber, der irgendwo liegt, in Java einzubinden.
wo find ich die classpath Datei?
das muss doch mit Eclipse eifnach gehen, aber ich find nix.
Zudem ist es wichtig, dass der Treiber nicht in mein Jar-File integriert wird, sondern extern liegen muss...
das mit der Batch-Datei ist nicht schwierig. Da gehört nur ein etwas längerer java-Aufruf hin:
java -classpath [Pfad zum jdbc-lib].jar;[andere libs].jar;[deineJarDatei] de.aemik.anwendung.NameDerMainKlasse
erstelle eine Textdatei und nenne sie aemiksDBProgrammStarten.bat, dann kannste diese batch-Datei im Text-editor editieren und in der eingabeaufforderung (oder cmd) aufrufen.
Vielleicht noch ein kleiner Hinweis: ich arbeite privat viel mit Netbeans. Netbeans macht es alles automatisch in der manifest-Datei und lagert alle externen Bibliotheken im lib-Verzeichnis. Mit netbeans wäre dieses Problem hier im Forum gar nicht aufgetaucht
die Main Klasse muss vollqualifiziert angegeben sein. Also zusammen mit package falls die Klasse eine package-Deklaration hat. Noch was zur Sicherstellung:
Wenn du den Aufruf "java -classpath ojdbc14.jar;test.jar Start " benutzt dann ist folgendes vorausgesetzt:
- du bist mit deiner Eingabeaufforderung im gleichen verzeichnis bist wie die dateien ojdbc14.jar und test.jar, andernfalls kannst du sogar komplette Pfade reinschreiben, z.B.:
java -classpath "C:\Dokumente und Einstellungen\...\ojdbc14.jar;C:\Dokumente und Einstellungen\...\test.jar" [packagename].Klasse