Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   JAVA: DBzugriff funktioniert nach 'Build Main Project' nicht (https://www.delphipraxis.net/62278-java-dbzugriff-funktioniert-nach-build-main-project-nicht.html)

geisi 2. Feb 2006 11:46


JAVA: DBzugriff funktioniert nach 'Build Main Project' nicht
 
Mein programm speichert die Daten in einer datenbank. wenn ich es unter netbeans 4.1 mit F6(Run Main Project) starte, funktioniert alles wunderbar.

Wenn ich dann aber eine .jar datei erzeuge (mit 'Build Main Project') und ich diese dann im explorer mit einem Doppelklick starte, bekomme ich alle meine Exceptions (z.B. Verbindung zur Datenbank konnte nicht hergestellt werden, oder Daten konnte nicht aus der Datenbank geladen werden). Wenn ich es dann wieder mit den netbeans probiere, funktioniert alles wieder wunderbar. WARUM?????

PS: habe mysql_connector unter libaries eingebunden!!! liegt hier der fehler?

die library mysql_connector_bin.jar liegt irgendwo auf der platte. hab sie dann mit 'Add JAR/Folder ...' in mein Project eingebunden(in das 'Libraries'-Verzeichnis)!

Horst_59 2. Feb 2006 13:15

Re: JAVA: DBzugriff funktioniert nach 'Build Main Project' n
 
Hallo,

ohne Stacktrace ist schwer zu sagen, wo dein Problem genau liegt.
Ich vermute, dass der Classpath nicht korrekt ist, wenn du das JAR per Doppelklick ausführst. Schau dazu mal in die META-INF/manifest.mf-Datei im jar (du kannst es einfach wie ein ZIP-File auspacken). Wenn dort keine Referenz zum Datenbanktreiber eingetragen ist, musst du vorm Ausführen noch die CLASSPATH-Umgebungsvariable entsprechend anpassen, um die Anwendung starten zu können.

Gruß
Sebastian

geisi 2. Feb 2006 17:51

Re: JAVA: DBzugriff funktioniert nach 'Build Main Project' n
 
Code:
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.6.2
Created-By: 1.5.0-b64 (Sun Microsystems Inc.)
Main-Class: KochrezepteFrame
X-COMMENT: Main-Class will be added automatically by build
das steht in der META-INF/manifest.mf

was muss ich jetzt machen, um den classpath anzupassen?

Horst_59 2. Feb 2006 18:39

Re: JAVA: DBzugriff funktioniert nach 'Build Main Project' n
 
Hallo,

du hast mehrer Möglichkeiten:

Entweder du passt die Manifest Datei an und ergänzt sie um den Eintrag:
Code:
Class-Path: <relativer Pfad zum mysql connector>/mysql_connector.jar
Oder du setzt beispielsweise die Umgebungsvariable
Code:
CLASSPATH=Pfad\zum\mysql_connector.jar
Ich hoffe, dass dir das weiterhilft.

Gruß
Sebastian

geisi 3. Feb 2006 10:42

Re: JAVA: DBzugriff funktioniert nach 'Build Main Project' n
 
meinst du ich soll in der eingabeaufforderung folgendes eingeben?
Code:
  set CLASSPATH=C:\mysql_connector.jar
aber ich kann doch nicht jedesmal wenn ich das programm weitergebe die classpath auf dem rechner setzen, geht das nicht irgendwie einfacher?

Chewie 3. Feb 2006 11:43

Re: JAVA: DBzugriff funktioniert nach 'Build Main Project' n
 
Zitat:

Zitat von geisi
aber ich kann doch nicht jedesmal wenn ich das programm weitergebe die classpath auf dem rechner setzen, geht das nicht irgendwie einfacher?

Ja doch:

Zitat:

Zitat von Horst_59
Entweder du passt die Manifest Datei an und ergänzt sie um den Eintrag:
Code:
Class-Path: <relativer Pfad zum mysql connector>/mysql_connector.jar

:zwinker:

geisi 3. Feb 2006 11:47

Re: JAVA: DBzugriff funktioniert nach 'Build Main Project' n
 
ok, aber wie bekomme ich wieder einen .jar datei, wenn ich sie mit winRAR entpackt habe.
mit WinRAR funktionierts nicht oder kann ich das schon irgendwo bei den netbeans einstellen?

Chewie 3. Feb 2006 12:55

Re: JAVA: DBzugriff funktioniert nach 'Build Main Project' n
 
Bestimmt geht das irgendwie Mit NetBeans. Und wenn nicht, dann kannst du dir einen Ant-Task schreiben, der die JAr erstellt.

Und eine JAR ist einfach eine normale Zip mit der Endung .jar, also kriegst du das auch mit WinRAR hin.

Der_Unwissende 3. Feb 2006 13:03

Re: JAVA: DBzugriff funktioniert nach 'Build Main Project' n
 
Hi,
ja geht mit Sicherheit auch irgendwo mit NetBeans, die Konkurrenz (Eclipse) unterstützt das ja schon länger (und SUN schläft da bestimmt nicht).
Aber der einfachste Weg ist : jar.exe. Die findest du in deinem Java-SDK. Da kannst du mit -M eine Manifestdatei angeben. Ansonsten gleicht die so ziemlich allen Kommandozeilenpackern (wie z.B. tar ;-))

Gruß Der Unwissende

geisi 3. Feb 2006 13:45

Re: JAVA: DBzugriff funktioniert nach 'Build Main Project' n
 
danke! habs jetzt mit winrar entpackt, dann die manifest-datei bearbeitet('class-path:...') und dann wieder mit winrar nach programm.jar gezippt. und es funktioniert. danke!


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:40 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz