Impressum · Kontakt · Hilfe
Besucher online · Mitglieder



Portal > Foren > Datenbanken, Server, Betriebssysteme und sonstige Programmiersprachen > Tools, Server, Betriebssysteme > Applikation von Netbeans IDE4.0 in Windows Commandshell starten
Antwort
 
Themen-Optionen
Alt 23.02.2005, 13:35   Nach oben    #1
headhand
Gast
 
Beiträge: n/a
Standard Applikation von Netbeans IDE4.0 in Windows Commandshell starten

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
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 23.02.2005, 14:26   Nach oben    #2
ehli75
Benutzer
 
Benutzerbild von ehli75
 
Registriert seit: 30.11.2004
Beiträge: 97
Standard

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.
ehli75 ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 23.02.2005, 14:45   Nach oben    #3
headhand
Gast
 
Beiträge: n/a
Standard

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.
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.02.2005, 10:15   Nach oben    #4
ehli75
Benutzer
 
Benutzerbild von ehli75
 
Registriert seit: 30.11.2004
Beiträge: 97
Standard

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
ehli75 ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.02.2005, 11:15   Nach oben    #5
headhand
Gast
 
Beiträge: n/a
Standard

Der Hinweis war sehr gut. Somit kann ich ein jar-File direkt aus einem einer shell starten, es genügt einfach die Angabe des kompletten Filenamen und der Extension. Doch damit nicht genug. Meine Applikation verwendet auch Jar-Files für JDBC-Zugriffe. Nun würde ich diese zusätzlichen Jar's noch gerne in das JAR der Applikation mit einbinden, am Ende sollte nur ein einziges Jar-File für die ganze Applikation notwendig sein. Mein Problem besteht darin, wie die Applikation diese zusätzlichen Jar's im Jar-File findet?!
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Trackbacks are An
Pingbacks are An
Refbacks are Aus

Ä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


Alle Zeitangaben in WEZ +2. Es ist jetzt 06:31 Uhr.

Nach oben
Wir nutzen das Zend Framework, vBulletin (vBulletin v3.7.2, Copyright ©2000-2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.0.0) und vBSEO.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44