![]() |
|
|
Themen-Optionen |
|
|
Nach oben #1 |
|
Gast
Beiträge: n/a
|
Die Applikation läuft in IDE, beim Start in einer commandshell tritt die ClassNotFoundException auf. Das Problem ist ein 'jar' file, welches JDBC-Treiber enthält. Wie kann JRE dazu bewegt werden, das jar-file zu verwenden? Die Versuche mit *.class und *.jar files in einem Directory verliefen erfolglos, auch die Applikation aus dem von der IDE erstellen jar-file zu starten, scheiterte. In der IDE wird ja im Window 'Files' unter dist das generierte jar-file angezeigt, hier ist zu bemerken, dass bei meiner Klasse ein Fehler angezeigt wird. Trotzdem läuft die Applikation unter der IDE,,,
Danke für eure Antworten |
|
|
|
Nach oben #2 |
|
Benutzer
Registriert seit: 30.11.2004
Beiträge: 97
|
Wenn du das Programm in der Console laufen lasen willst, musst du Java auch "sagen", wo die Bibliotheken (dein JDBC-Treiber z.B.) zu finden sind.
entweder setzt du vorher die Systemvariable CLASSPATH: Windows: set CLASSAPTH=.\;.\meinJDBC-Treiber.jar;c:\weitere\Bibliothek.jar Linux: export CLASSPATH=./:./meinJDBC-Treiber.jar:/weitere/Bibliothek.jar (Wichtig: die Trennung von verschiedenen Pfaden ist bei Windows ein Semikolon( ; ) und unter LInux ein Doppenpunkt ( : ) ... ein sehr beliebter aber schlecht zu findender Fehler !!) oder du gibst den CLASSPATH beim Start deiner Applikation mit java -cp ./:./meinJDBC-Treiber.jar:/weiter/Biblothek.jar meineApplikation Im zweiten Fall ist der CLASSPATH nur für diesen einen Aufruf gesetzt. Bei jar-Dateien musst du jede Datei einzeln in den CLASSAPTH aufnehmen ... da reicht es nicht auf ein Verzeichnis zu verweisen. Und auch ganz wichtig, immer das aktuelle Verzeichnis angeben ./ ... damit Java auch im aktuellen Verezichnis sucht. Das ist zwar die Defaulteinstellung ... aber durch das setzen des CLASSAPTH auf deine Bibliotheken wird diese Defaulteinstellung überschrieben ... so dass Java nicht im aktuellen Verzeichnis suchen würde !!! Michael PS: Ansonsten schau dir mal ein JAva-Buch an ... da steht sowas bestimmt drin beschrieben. |
|
|
|
|
|
Nach oben #3 |
|
Gast
Beiträge: n/a
|
Besten Dank!
Jetzt läuft's! Gibt es vielleicht noch eine Möglcihkeit, mit welcher für die ganze Applikation festgelegt werden kann, wo die Verzeichnisse liegen, bzw. welche jar-Files zu verwenden sind. Als Standard würde ich das aktuelle Verzeichnis betrachten, somit kann eine Applikation einfach von A nach B konpiert werden. |
|
|
|
Nach oben #4 |
|
Benutzer
Registriert seit: 30.11.2004
Beiträge: 97
|
Wenn ich das richtig verstanden habe, liegt deine Applikation in einer jar-Datei vor und du willst sie mit einem Doppelklick starten ?!?! In diesem fall ist es recht einfach. Dazu musst du nur die Manifest-Datei in deiner jar-Datei (die du selber bzw. ein Tool für dich angelegt hat) ändern - wenn du das über eine IDE gemacht hast gibt es bestimmt die Möglichkeit irgendwelche Einstellungen machen zu können.
Wenn du es per Hand machen willst, musst du folgendermaßen vorgehen: Wenn du die Datei geöffnet hast, sieht die wahrscheinlich so (o.ä.) aus: Manifest-Version: 1.0 Main-Class: dieMainklasseMeinerApplikation Nun musst du lediglich folgendes hinzufügen: Class-Path: bibliothek1.jar bibliothek2.jar verzeichnis1 verzeichnis2 Das wars schon. WICHTIG: zwischen den einzelnen Einträgen ist jeweils ein Leerezeichen !!! Den Pfad gibst du einfach relativ an ... und gut ist. Michael |
|
|
|
|
|
Nach oben #5 |
|
Gast
Beiträge: n/a
|
|
|
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Firefox: Marktanteil klettert in Europa über 20 Prozent | robo47 | Nachrichten | 36 | 03.12.2007 14:20 |
| Windows Dienst mit Batch Datei starten. Starttyp: Automatisch | Jay | Sonstige Programmiersprachen | 11 | 27.07.2006 12:05 |
| Netbeans generiertes jar will nicht starten | cgeorg | Tools, Server, Betriebssysteme | 1 | 29.07.2005 22:22 |
| JAR: Applikation mit Doppelklick in Windows starten | headhand | Tools, Server, Betriebssysteme | 2 | 21.07.2005 13:48 |