# [eclipse] jar, exe oder irgendwas ausführbares erstellen?



## CyberTim (2. März 2004)

folgendes Problem:
ich arbeite mit eclipse (noch 2.1, kann aber updaten, wenn nötig) und würde gerne mein mittlerweile doch größeres Programm jemanden zum testen geben. der hat kein eclipse drauf und ist schon genervt genug für mich den "beta-tester" zu spielen und will auch kein eclipse drauf machen. also brauche ich das Programm in irgendeiner ausführbaren Version...
also aufs projekt mit rechts geklickt und auf export und so weiter geklickt. aber egal, wie ich das exportiere, ist der export nie vollständig, d.h. es fehlen dateien und das programm ist somit nicht lauffähig.

was fehlt ist eine .jar-datei die ich ins prohekt mit eingebunden habe und der treiber für die DB2-Datenbank (eine .zip-datei). für diese beiden Dateien stehen nur die absoluten Pfadangaben in der .classpath (in der exportierten .jar).

wie krieg ich die beiden fehlenden Dateien in die .jar, dass man das Programm auch auf nem andren Rechner laufen lassen kann...

DB2 läuft übrigens auf nem andren server, wir beide zugriff drauf haben...


----------



## AndreG (2. März 2004)

Hi

ich weiß nich genau ob es mit dem prog geht aber ich würde es mal mit InstallAnywhere versuchen http://www.zerog.com  hab damit gute Erfahrungen gemacht. Allerdings must du wenn dein Kollege keine JVM hat diese mit in den Installer packen womit es leider sehr groß wird. Ohne hält es sich in Grenzen. Das ist leider der Preis von Java es ist nicht Plattform gebunden.

Hoffe konnte helfen


----------



## CyberTim (2. März 2004)

ne VM is net das Thema (OpenOffice läuft)
ich probiers mal..


----------



## CyberTim (2. März 2004)

des  auch net
da brauch ich doch erstmal ne jar für, wo wir wieder beim ursprünglichen problem wären.

der packt eben nicht alles in die .JAR
wie krieg ich des aber darein?!


----------



## Christian Fein (2. März 2004)

jar -help 

```
Syntax: jar {ctxu}[vfm0Mi] [JAR-Datei] [Manifest-Datei] [-C dir] Dateien ...
Optionen:
    -c  neues Archiv erstellen
    -t  Inhaltsverzeichnis für Archiv auflisten
    -x  benannte (oder alle) Dateien aus dem Archiv extrahieren
    -u  vorhandenes Archiv aktualisieren
    -v  ausführliche Ausgabe für Standardausgabe generieren
    -f  Namen der Archivdatei angeben
    -m  Manifestinformationen aus angegebener Manifest-Datei einbeziehen
    -0  nur speichern; keine ZIP-Komprimierung verwenden
    -M  keine Manifest-Datei für die Einträge erstellen
    -i  Indexinformationen für die angegebenen JAR-Dateien generieren
    -C  ins angegebene Verzeichnis wechseln und folgende Datei einbeziehen
Falls eine Datei ein Verzeichnis ist, wird sie rekursiv verarbeitet.
Der Name der Manifest-Datei und der Name der Archivdatei müssen
in der gleichen Reihenfolge wie die Flags ''m'' und ''f'' angegeben werden.

Beispiel 1: Archivieren von zwei Klassendateien in einem Archiv mit dem Namen classes.jar:
       jar cvf classes.jar Foo.class Bar.class
Beispiel 2: Verwenden der vorhandenen Manifest-Datei ''meinmanifest'' und Archivieren aller
           Dateien im Verzeichnis foo/ in ''classes.jar'':
       jar cvfm classes.jar meinmanifest -C foo/ .
```


----------



## peshay (17. Juni 2004)

also ich hab so ein ähnliches problem (habs auch mit eclipse versucht)
wenn ich den jar befehl benutze:
jar cvfm MANIFEST.MF -C test/ .
kommt immer
java.io.FileNotFoundException: -C (Das System kann die angegeben Datei nicht finden)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:106)
at java.io.FileInputStream.<init>(FileInputStream.java:66)
at sun.tools.jar.Main.run(Main.java:123)
at sun.tools.jar.Main.main(Main.java:904)

eclipse hat mir bisher immer ein jar file gemacht wie ich es mir wünsche, nur mit dem problem das mein programm nicht mehr das beigefügte bild verwendet und auch nich auf die Datenbank-treiber zugreifen kann...

also die Dateien
HH.jpg 
classes12.jar (datenbanktreiber)
sind zwar drin, funktionieren aber nicht

muss ich dafür vieleicht noch was spezielles ins manifest schreiben?


----------



## Thomas Darimont (17. Juni 2004)

Hallo!

Benutz doch mal die Suche, sowas hatten wir schon öfter...

Gruß Tom


----------

