Discussion:
library mit in eigene jar-Datei einbinden
(zu alt für eine Antwort)
Oliver Lemke
2005-03-08 16:55:08 UTC
Permalink
Hallo,

vorweg: ich verwende Netbeans 4.0 und das jdk 1.5.0. Ich stehe momentan
erstmals vor dem Problem, dass ich ein kleines Tool als jar-Datei
weitergeben will. Bis jetzt funktionierte das auch alles wunderbar, da
ich nur Packages benutzt habe, die zum Lieferumfang der jre 1.5.X gehörten.

Nun verwendet mein kleines Tool aber neuerdings die jargs-Library zum
Parsen der Kommandozeile (man muss ja nicht immer alle Räder neu
erfinden). Diese bekommt man als jargs.jar.

So. An dieser Stelle wurde mir bewusst, dass ich noch nicht wirklich
umfänglich verstanden hatte, wie das ganze Konzept mit der Einbindung
von 3rd-Party-Libraries bei Java funktioniert. Ich gab mich aber
zunächst damit zufrieden, dass es offensichtlich geht, wenn ich die
Datei jargs.jar im Unterverzeichnis jre\lib\ext meiner sdk-Installation
unterbrachte. Ich konnte dann das Package per import-Statement verwenden.

Das funktioniert sowohl beim compilieren, als auch aus beim "run" aus
der Netbeans-IDE hervorragend, aber nicht, wenn ich die erzeugte
jar-Datei in ein anderes Verzeichnis verschiebe und per java -jar
sonstwas.jar aufrufe. Dann gibts ein: "Exception in thread "main"
java.lang.NoClassDefFoundError: jargs/gnu/CmdLinePars
er$OptionException".

Ich wüsste nun gerne, wie ich Netbeans mitteile, dass es die jargs.jar
mit in meine eigene jar-Datei einbindet und auch die Classpaths
entsprechend setzt.

Ich habe folgendes versucht: Unter "Tools/Libaray Manager" die jargs.jar
einbinden (da taucht sie nun auf) und dann in den "projekt properties"
unter "Compiling sources" im "Classpath for Compiling Sources" ebenfalls
die jargs-Library angeben. Hat genau nichts gebracht.

Hinweise auf Lesestoff oder auch ein konkreter Hinweis wären schön.

Danke

Oliver
--
Ausrüstung der örtlichen Aufsicht:
Die örtliche Aufsicht trägt eine rote Mütze.

Konzernrichtlinie 408 der Deutschen Bahn AG, Modul 0325, Absatz 3
TSK
2005-03-08 20:20:24 UTC
Permalink
[Unter Netbeans 4.0 und 1.5.0. eine Tool.jar einbinden]
Ich wüsste nun gerne, wie ich Netbeans mitteile, dass es die jargs.jar
mit in meine eigene jar-Datei einbindet und auch die Classpaths
entsprechend setzt.
Pack das jar mit einem zip-Programm in ein Directory aus und binde
das in Netbeans ein. Achte darauf, unter welcher Lizenz das Teil
läuft, evtl. muss ein Verweis "LICENSE.TXT" oder ähnliches mit
eingepackt werden, damit es legal ist.

HTH
Thorsten
--
Bitte Reply-To: unverändert verwenden; die Adresse ist gültig.
MagPlot: Java Chart Program - https://magplot.dev.java.net/
Bernd Eckenfels
2005-03-09 02:22:28 UTC
Permalink
Post by Oliver Lemke
Ich wüsste nun gerne, wie ich Netbeans mitteile, dass es die jargs.jar
mit in meine eigene jar-Datei einbindet und auch die Classpaths
entsprechend setzt.
Du kannst, neben einer Batch mit "java.exe -cp" oder einem Anwendungs-JAR
mit Class-Path: manifest, neben dem auspacken und aufnehmen der Lib
(vorsicht lizenz!) auch One-Jar verwenden.

http://one-jar.sourceforge.net/

Gruss
Bernd

Loading...