Keine Treiber-Klasse!

  • Themenstarter Themenstarter Incognito
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
I

Incognito

Gast
Hey Leute,

mein Problem sieht wie folgt aus, ich habe ein Progamm mit Eclipse Programmiert, das auf eine Datenbank Zugreifen soll, wenn ich es mit Eclipse Starte klappt es wunderbar, allerdings habe ich das Problem ich wollte es ohne Eclipse starten, habe daher den aufruf in einer Bat Datei. Öffnen tut er das Programm zwar, aber er schreibt mir dann hin das keine Treiber-Klasse existiert, obwohl es in Eclipse wudnerbar klappt, weiß jemand woran das liegen könnte?
 
Klingt wie so oft nach Classpath, also einfach

-classpath C:\wo_auch_immer\mysql_connector_irgendeine_version_oder_was_andres_eben.jar

als Parameter beim Aufruf des Programms mit übergeben.
 
ah, ok, danke das hat geklappt, allerdings habe ich nun wieder ein anderes Prob^^

Ein Kollege fragte mich gerade warum ich es mir so schwer mache, ich könnte es doch einfach als JAR-file Installieren.
Also habe ich das gemacht, hat auch wunderbar geklappt, nur hat er nun wieder das gleiche Problem, wo kann ich ihm nun sagen das ich die Classpath auch mit exportieren möchte?
 
Du bindest den Treiber mit in das Jar-File ein, meinetwegen gleich im untersten Verzeichnis, und fügst den Eintrag in die Manifest-Datei ein, in der auch die Main-Class steht.

Die Manifest-Datei könnte dann so aussehen:

Main-Class: packageName.Hauptklasse
Class-Path: mysql_connector_oder_sonstwie.jar
 
Hmmm... ich spiele eindeutig zu viel rum, ich hatte das jetzt getestet und dann ging mein ganzes Prog net mehr, zum Glück hatte ich ein Backup, aber wenn ich nun den JAR-file erstelle schreibt er mir dann beim Start hin: "Could not find the min class. Program will exit." aber bei dem Umwandeln habe ich die main Klasse eingegeben, ich weiß gerade nicht wo sein Problem ist...
 
Mit was erzeugst du die JAR? Öffne die JAR mal mit WinAce oder einem anderen Programm und sie mal nach, ob die Datei META-INF/manifest.mf vorhanden ist.
 
Sorry, konnte gestern net weiter machen, hab vergessen mein Projekt mit nach haus zu nehmen^^

Also dieser Ordner wo die Datei drin ist existiert, in der Datei steht folgendes:
Manifest-Version: 1.0
Main-Class: Kontakte.Start
 
Klingt korrekt, wenn die Datei /Kontakte/Start.class die Main-Klasse enthält. (Ist aber bissl ungwöhnlich, dass der Package-Name groß geschrieben wird.) Dort einfach den Eintrag "Class-Path: ..." einfügen.

Mit welchem Befehl startest du die JAR? Dieser hier?

java -jar meineJar.jar
 
lol, ja ich weiß, mein Lehrer hat sich auch immer Beschwert das ich meine Variablen mal groß und mal klein schreibe, so wies mir halt gerade gefällt^^

nein, nicht wirklich, bei mir startet das schon mit doppelklick auf die Datei... ^^
 
So, ok ich hab es jetzt mit ner .bat Datei versucht, aber er schreibt mir beim ausführen immer hin:

"Exception in thread "main" java.lang.NoClassDefFoundError: Kontakte/Start"

Kann es sein das er eine Class net findet und wenn ja weiß jemand warum nicht?^^
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben