# mal wieder jar!



## babuschka (8. Dez 2005)

Hallöchen!

Ich versuche gerade, mein Programm mit einer jar-Datei selbstständig zum laufen zu bringen. hab mir auch das HowTo in den FAQs durchgelesen nur komme nicht so ganz klar...
hier meine Frage:
ich lese ein xml-Dokument mit Hilfe von jdom ein. muss ich jetzt noch jdom mit reinpacken oder wie funkt das? zudem werden noch bestimmte gifs eingelesen - die auch noch mit reinpacken???  :bahnhof: 
habe es mit einem jarMaker probiert (eagle jar maker  - irgendein Vorschlag hier im Forum), allerdings sagt der mir immer wieder, dass meine main class nicht gefunden werden kann... weiß aber nicht, warum das nicht geht - ist ein einfaches ding, da kann man nicht viel falsch machen! ist halt auch kein MF dabei...

Bin für jeden Ratschlag oder Tipp dankbar!


----------



## The_S (8. Dez 2005)

Du brauchst ein Manifest ...


----------



## bygones (8. Dez 2005)

in den FAQs steht eine ganzer Artikel zu jars in jars

http://www.java-forum.org/de/viewtopic.php?t=13075

wenn du es nciht mit reinpacken willst muss im Manifest der Classpath korrekt angegeben sein. 

wg gifs usw. such im Forum nach getRessource


----------



## babuschka (9. Dez 2005)

also, habe jetzt erstmal ein manifest.txt erstellt. sieht folgendermaßen aus:

```
Manifest-Version: 1.0
Main-Class: dienstag.Concept
Class-Path: . jdom.jar
```

irgendwelche Verbesserungen oder was fehlt?

dann habe ich gerade zuerst versucht, die jar so zu erstellen, wie es in den FAQ beschrieben ist:

```
jar -cfv test.jar ...meine Class-Dateinen...
```
allerdings kommt dann die Meldung, dass der Befehl jar nicht gefunden werden kann!  :x


----------



## bummerland (9. Dez 2005)

wichtig ist, das du am ende der manifest noch eine leerzeile hast. (also quasi 2 mal enter  )
die jar muss im pfad liegen. ansonsten direkt aufrufen über z.b. c:\programme\java\jdk1.5.0\bin\jar.exe... oder so.


----------



## The_S (9. Dez 2005)

und evtl. noch statt cvf ein cvfm mitübergeben.


----------



## L-ectron-X (9. Dez 2005)

Um das Dienstprogramm JAR aufzurufen bedarf es einem JDK und dem richtigen Pfad dorthin.
Wenn der Commando-Interpreter von Windows meint, dass er JAR nicht finden kann solltest du untersuchen, ob diese Voraussetzungen gegeben sind. Notfalls kannst du in die Console, oder einer Batchdatei (Autoexec.bat) den Pfad zum JDK übergeben:

```
set path=.;c:\der\pfad\zum\JDK\bin
```
Und: Hobbit hat Recht. Wenn du ein Manifest integrieren willst, darf die Option "m" in der Optionsliste nicht fehlen.


----------



## babuschka (12. Dez 2005)

also so langsam...

habe das JDK neu installiert und den Pfad gesetzt. er findet den Befehl aber immer noch nicht!  :bahnhof:


----------



## thE_29 (12. Dez 2005)

Wo hast du den Pfad gesetzt??

Wenn du in die cmd Line gehst, und echo $PATH eingibst, was steht dann dort?


----------



## L-ectron-X (12. Dez 2005)

Der Befehl muss lauten:

```
echo %path%
```
Dann wird die Umgebungsvariable des Pfads ausgegeben. Und die Ausgabe möchten wir hier gern mal sehen.


----------



## thE_29 (12. Dez 2005)

Ja gut 

Das war wieder Linux... Bin in letzter Zeit mehr auf Linux :bae:


----------



## babuschka (12. Dez 2005)

na aber gern doch!   

C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\system32\Wbem;C:\VW\pro\bin;C:\Plossys
also, ich kann damit grad nix anfangen, aber vielleicht ihr...
bei den Umgebungsvariablen sind meine Bibliotheken alle mit drin!


----------



## thE_29 (12. Dez 2005)

Naja, und wo hast du bitte die Path Variable gesetzt??

Wo ist bei dieser Ausgabe ein java/bin Pfad drinnen??

Siehst du einen?


Wo hast du also bitte den Pfad gesetzt?


----------



## L-ectron-X (12. Dez 2005)

Ja, wie man sehr gut sehen kann, ist der Pfad zum JDK nicht mit drin. Deshalb kann Windows auch nicht das Java-Dienstprogramm Jar.exe nicht finden. Ergo muss der Pfad noch mit in die Pfadangabe.

```
set path=.;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\system32\Wbem;C:\VW\pro\bin;C:\Plossys;C:\der\Pfad\zum\JDK\bin
```
Du passt also deinen Pfad so in dieser Form an.


----------



## thE_29 (12. Dez 2005)

Ärrr!

Geht nicht! (vielleicht unter 98, kann ich aber net sagen..)

Ein set Befehl setzt den Pfad nur für die aktuelle Konsole!!

Außerdem wäre das kürzer

set path=%PATH%;C:\blablaa\balbal\balbal


Du musst -> Rechtsklick Arbeitsplatz->Erweitert->Umgebungsvariablen

Dort beim Eintrag path den Pfad von der JDK dazutragen!!


----------



## babuschka (12. Dez 2005)

komisch, bin mir sicher, dass ich den angegeben hatte!  ???:L 

also, jetzt kann ich zwar die jar mit Manifest erstellen. allerdings kann ich es nicht starten - er gibt immer an, dass die main class fehlt! dabei ist die drin!!! und dabei bin ich mir jetzt 100%ig sicher!!!
oder geht mein Programm nur dann, wenn ich die jdom-Bibliothek drin hab? aber eigentlich müsste es am Anfang auch so gehen... hab ja keine Datei eingelesen...


----------



## thE_29 (12. Dez 2005)

Tjo, aber die imports töten dein Programm ^^

Da gibt es 2 JAR Faqs von mir, 1 allg. Jar File erstellen, das 2te ineinander packen!

Sieh dir das mal an!


----------



## babuschka (12. Dez 2005)

was denkst du, was ich die ganze Zeit mache?! kann sie ja fast schon auswendig!

nur mit dem Oracle... da muss ich mich ja erst anmelden...


----------



## thE_29 (12. Dez 2005)

Das oracle ist als Test bsp!!

Du sollst ja dein Jar Pakages (sprich jdom) nehmen


----------



## Düark (12. Dez 2005)

Poste doch mal dein aktuelles Manifest...
Die Main-Class muss auch mit korrektem Pfad angegeben werden... 
hier mal ein Beispiel von mir, welches auch das JDom verwendet:

```
Manifest-Version: 1.0
Main-Class: com/test/DiffTool
Class-Path: DiffTool.jar ./jdom.jar
```

Gruss 
Dirk


----------



## babuschka (12. Dez 2005)

das Manifest müsste stimmen! bin inzwischen soweit, dass er mir jetzt eine jdomException rauswirft! hast du denn die Bibliothek mit eingebunden? denn die ist bei mir jetzt nur im Manifest drin...


----------



## Düark (12. Dez 2005)

Welche Bibliothek meinst Du jetzt? Also jdom.jar muss nur im classpath des Manifests angegeben werden, weil es ja nur angibt, wo die VM suchen soll. In meinem Beispiel also im gleichen Verzeichnis wie das main-Jar. Dieses Jar (mit Deiner mainclass) solltest Du auch noch im Classpath angeben (wie bei mir "DiffTool.jar").

Funktioniert denn dein Programm,wenn Du es nicht als Jar startest?
Wie lautet denn die JDOM-Exception?


----------



## babuschka (12. Dez 2005)

ja, meine jdom.jar. und die hab ich in dem gleichen Verzeichnis gerade, wie die .class-Dateien. aber da müsst ich nochmal den Classpath überprüfen! müsste vielleicht daran liegen...

aber klar funkt mein Prog! sonst würd ich nicht versuchen, es in eine jar zu packen!  :autsch:


----------



## babuschka (13. Dez 2005)

Also, irgendwie gabs grad wieder nen Rückschlag...   

hier mal alles zusammengefasst:
path ist gesetzt. hab es jetzt auch bei den Umgebungsvariablen drin. er wird auch bei echo %path% ausgegeben.
manifest.txt ist im gleichen Package wie die class-Dateien und sieht folgendermaßen aus:

```
Manifest-Version: 1.0
Main-Class: Concept
Class-Path: C:\Programme\Java\jre1.5.0_04\lib\jdom.jar
```
bin in meinem Verzeichnis auf dem X-Laufwerk in dem gleichen Ordner, wo sich die main-Klasse befindet. die jdom.jar ist in dem obigen Verzeichnis
dann geb ich folgenden Befehl ein:

```
jar -cvfm name.jar manifest.txt Concept.class ...
```
dann gibt er mir aus, dass das Manifest hinzugefügt wurde und die einzelnen Klassen komprimiert worden sind.
dann bei 
	
	
	
	





```
java -jar name.jar
```
gibt er folgendes aus:
*Exception in thread "main" java.lang.NoClassDefFoundError: Concept*
aber die Klasse ist in dem Verzeichnis, ich kann alles mit Eclipse kompilieren...!


----------



## Mag1c (13. Dez 2005)

Hi,

steht am Anfang in der Klasse irgendetwas von "package xxx;" ?

Gruß
Mag1c


----------



## Düark (13. Dez 2005)

Du kannst ja mal das erzeugte Jar mit einem Programm wie WinRar öffnen. Da müsstest Du dann Deine Klassenstruktur sehen.
Im allerersten Manifest, was Du gepostet hast, stand Main-Class: dienstag.Concept
Wenn Du also wirklich ein Package "dienstag" hast, dann müsstest Du im geöffneten Manifest min. zwei Verzeichnisse sehen, nämlich:

dienstag
META-INF

In META-INF liegt dein Manifest
In "dienstag" müsste Deine Klasse Concept liegen.
Wenn das nicht so ist, musst Du halt die Pfade im Manifest entsprechend anpassen, oder halt das Package anlegen... sollte man eh machen, da es beim Default Package zu Problemen kommen kann...


----------



## babuschka (13. Dez 2005)

also, hab bisher alles im default-package. dienstag ist einfach nur der Projektname...

habe es mit WinRAR geöffnet... da kommt zuerst META-INF mit Manifest, dann folgen die Klassen. halt nicht in einem package. aber ansonsten ist alles da!

d.h. ich nehm jetzt mal nicht das default package und probier es so....


----------



## babuschka (13. Dez 2005)

ok, jetzt hab ich zwar ein package Klassen, was mich auch nicht weiterbringt. wenn ich die Befehle nicht im Package ausführe, findet er die Klassen nicht... 
ansonsten alles wie gehabt: er erstellt die jar richtig, nur beim Ausführen findet er die main nicht... und dann sind auch die Dateien nicht in dem Package - also kein Ordner namens Klassen...


----------



## Mag1c (13. Dez 2005)

Hi,

solltest mal das externe jar-File (jdom.jar) in dein Projekt kopieren und den Pfad dann relativ im Manifest angeben.



> Currently, the URLs must be relative to the code base of the JAR file for security reasons. Thus, remote optional packages will originate from the same code base as the application. A future enhancement will leverage the facilities of the Java 2 Platform's Security APIs to allow references to JAR files at other URLs.



Gruß
Mag1c


----------



## babuschka (13. Dez 2005)

hab ich reinkopiert, und krieg jetzt diese Liste:
*Exception in thread "main" java.lang.NoClassDefFoundError: Concept (wrong name:
Klassen/Concept)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)*


----------



## Mag1c (13. Dez 2005)

Jetzt stimmt was mit den Packages nicht. Wie hast du das jetzt in Packages gepackt ?

Wenn deine Klasse in einem Package organisiert ist, z.B.


```
package mein.pck;

public class Concept {...
```

dann ist die .class-Datei z.B. hier zu finden:

*c:\MeinProjekt\mein\pck\Concept.class*

manifest.txt und die Bibliothek jdom.jar befinden sich im Projektverzeichnis *c:\MeinProjekt*

Das Manifest muß dann so aussehen:


```
Manifest-Version: 1.0 
Main-Class: mein.pck.Concept 
Class-Path: jdom.jar
```

Wenn man daraus ein .jar bauen will, muß man sich im Verzeichnis *c:\MeinProjekt* befinden und den restlichen Pfad (der dem Package entspricht) beim einpacken mit jar mit angeben:


```
c:\>cd MeinProjekt
c:\MeinProjekt>jar -cvfm name.jar manifest.txt mein\pck\Concept.class
```

Gruß
Mag1c


----------



## babuschka (13. Dez 2005)

kommt beim Manifest kein \ hin?

habe es jetzt sowohl mit dem package, als auch mit dem default-package versucht - er findet immer die main nicht!!! aber das Verzeichnis im Manifest ist richtig angegeben!!!
die jar ist auch immer richtig aufgebaut...

habe alles so, wie gesagt!  :cry:


----------



## Düark (13. Dez 2005)

Dann poste halt nochmal alles was Du so hast:
Manifest
Verzeichnisstruktur deines Projektes (wo liegen die klassen usw.)
Die ersten Zeilen deiner Klasse Concept (mit package-infos)

Und zwar am besten alles per copy/paste, damit sich kein Gross-Klein-odersonstwasfürein-Schreibfehler einschmuggelt.

Das \ ist der Windows-typische file-separator, den Du unter Java nicht finden wirst. Deswegen je nach dem:
. oder /


----------



## babuschka (14. Dez 2005)

also, Manifest beim Klassen-package:

```
Manifest-Version: 1.0 
Main-Class: Klassen.Concept 
Class-Path: jdom.jar
```

Klasse Concept fängt so an:

```
package Klassen;

import java.awt.*;
import...

public class Concept implements ActionListener...{
```

und dann gibts noch die Klassen Menu, ToolBar, Paint, Linebreak, WindowClosingAdapter - alle so mit dem ähnlichen Anfang.

Ordnerstruktur sieht so aus:
Pfad zum Projekt: X:\...\ProjektJAR -> mit Ordner images (für die Toolbar), Ordner Klassen (mit den .java und .class-Dateien), jdom.jar, manifest.txt und die von Eclipse automatisch erstellten .classpath und .project

wobei beim ausführen mit Eclipse seit dem Anlegen der Packages folgende Exception ausgeworfen wird:

```
Uncaught error fetching image:
java.lang.NullPointerException
	at sun.awt.image.URLImageSource.getConnection(Unknown Source)
	at sun.awt.image.URLImageSource.getDecoder(Unknown Source)
	at sun.awt.image.InputStreamImageSource.doFetch(Unknown Source)
	at sun.awt.image.ImageFetcher.fetchloop(Unknown Source)
	at sun.awt.image.ImageFetcher.run(Unknown Source)
```

und wenn ich das als jar-File erstelle und ausführen will kommt folgendes:

```
Exception in thread "main" java.lang.NoClassDefFoundError: Klassen/Concept
```

da man ja aber in Eclipse auch mit export eine jar-File erstellen kann, hab ich das mit dem default package auch mal probiert. es ist wie immer alles drin, nur folgender Fehler wird angezeigt:
Failed to load Main-Class manifest attribute from X:\...\Con_1.0.jar (also die jar-File, die Eclipse automatisch erstellt).
und das Manifest sieht folgendermaßen aus:

```
Manifest-Version: 1.0 
Main-Class: Concept 
Class-Path: jdom.jar
```

ich hoffe es bringt was!!!


----------



## thE_29 (14. Dez 2005)

Schick mal die Sourcen und das jdom Packet...

behaveu<at>gmail.com

Ich schau mir das mal an!


----------



## Mag1c (14. Dez 2005)

Moin,

@ksh84: Beschreibung ist gut  aber es fehlt noch eine Kleinigkeit. Wie hast du konkret das .jar erstellt (Verzeichnis und komplette Befehlszeile).

Könnte es sein, daß noch weitere .jar's verwendet werden ?

Gruß
Mag1c


----------



## babuschka (14. Dez 2005)

also...
befehl zum erstellen der jar:
*X:\...\ProjektJAR>jar -cvfm jar1.jar manifest.
txt Klassen\Concept.class Klassen\Concept$1.class Klassen\Concept$2.class Klasse
n\Concept$3.class Klassen\Concept$4.class Klassen\Concept$5.class Klassen\Concep
t$6.class Klasse\Concept$7.class Klassen\Concept$8.class Klassen\Concept$9.class
 Klassen\Concept$10.class Klassen\Concept$11.class Klassen\Concept$12.class Klas
sen\Concept$13.class Klassen\Concept$14.class Klassen\Concept$15.class Klassen\C
oncept$16.class Klassen\Concept$17.class Klassen\Concept$18.class Klassen\Linebr
eak.class Klassen\Menu$1.class Klassen\Menu$2.class Klassen\Menu$3.class Klassen
\Menu.class Klassen\Paint.class Klassen\ToolBar$1.class Klassen\ToolBar.class Kl
assen\WindowClosingAdapter.class*

aufruf jar:
*X:\...\ProjektJAR>java -jar jar1.jar
Exception in thread "main" java.lang.NoClassDefFoundError: Klassen/Concept*

noch was???


----------



## thE_29 (14. Dez 2005)

Uncaught error fetching image:
java.lang.NullPointerException
   at sun.awt.image.URLImageSource.getConnection(Unknown Source)
   at sun.awt.image.URLImageSource.getDecoder(Unknown Source)
   at sun.awt.image.InputStreamImageSource.doFetch(Unknown Source)
   at sun.awt.image.ImageFetcher.fetchloop(Unknown Source)
   at sun.awt.image.ImageFetcher.run(Unknown Source)

Der kommt, wenn du die Bilder nicht in einem Ordner namens images hast!!

Siehe diesen Befehl:


```
//	URL finden
		String imgLocation = "images/"+ imageName+ ".gif";
		URL imageURL = ToolBar.class.getResource(imgLocation);
```

Nimm das images/ weg und es geht!!

Oder du legst es in einen Ordner images!


----------



## thE_29 (14. Dez 2005)

So, also dein Ordner soll so aussehen!!

+---classes
|   +---images
|   \---package cache
+---jdom
|   +---META-INF
|   \---org
|       \---jdom
|           +---adapters
|           +---filter
|           +---input
|           +---output
|           +---transform
|           \---xpath
\---src
    \---images


Das Jdom.jar hast du einfach mit Winzip oder derartigen entpackt!

Danach gehst du ins Hauptverzeichnis und führst die 2 Befehle aus:

jar -cvfm concept.jar manifest.txt -C classes /

jar -ufvm concept.jar manifest.txt -C jdom /

Im Manfiest.txt kannst du noch den Class-Path eintrag weglassen, da das jdom.jar ja jetzt in deinem Jar File ist!



Komisch ist aber, ich kann das Jar File net starten!!

Es geht nicht via java -jar concept.jar

Aber es geht mit java -cp concept.jar Concept


.....


----------



## thE_29 (14. Dez 2005)

BAA!!!!!!


Du darfst hinter dem main-class Namen doch kein Leerzeichen lassen!!!!!!


So solls aussehen 





> Manifest-Version: 1.0
> Main-Class: Concept
> <enter>



Und ja kein Leeerzeichen hinter Concept!!!!

Dann gehts auch!


----------



## babuschka (14. Dez 2005)

also, hab jetzt folgende Struktur: (hab die images in das Package Klassen getan)

+---ProjektJAR
| +---jdom
| | +---META-INF
| | +---org
| |  | +---jdom
| +---Klassen
|      ---images

und im ProjektJAR ist dann die manifest.txt

dann *jar -cvfm concept.jar manifest.txt -C Klassen /*
und *jar -ufvm concept.jar manifest.txt -C jdom /*, wo folgendes kommt:
*Eintrag META-INF/ wird ignoriert.
14.12.2005 13:30:15 java.util.jar.Attributes read
WARNUNG: Duplicate name in Manifest: Manifest-Version
14.12.2005 13:30:15 java.util.jar.Attributes read
WARNUNG: Duplicate name in Manifest: Main-Class
Manifest wurde aktualisiert.*

wenn ich dann *java -cp concept.jar Concept* eingebe, kriege ich folgendes:
*Exception in thread "main" java.lang.NoClassDefFoundError: Concept (wrong name:
Klassen/Concept)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)*

und mit *java -jar concept.jar* kommt mal wieder
*Exception in thread "main" java.lang.NoClassDefFoundError: Klassen/Concept*

ist meine Struktur immer noch falsch? aber in Eclipse läuft es jetzt - die URL müsste also stimmen!!!
die jar ist jetzt folgendermaßen strukturiert:
-images
-META-INF
-org
-dann folgen alle .class[/b]


----------



## babuschka (14. Dez 2005)

darf mal aus deinem FAQ zitieren:
_Also, nach jedem Attribut (sei es jetzt Manifest-Version oder Main-Class) gehört ein Leerzeichen, da es sonst nicht funktioniert! Die Class-Path Variable (wenn benötigt) wird via Leerzeichen (keine ; oder : ) getrennt._
hab das so verstanden bzw. ausprobiert, ob dahinter jedes Mal ein Leerzeichen sein muss - oder meintest du die Leerzeile?


----------



## Mag1c (14. Dez 2005)

Hi,

das bezieht sich auf das Leerzeichen zwischen Attributname+Doppelpunkt und dem Wert. Sollte in der FAQ darauf hingewiesen werden.

Gruß
Mag1c


----------



## thE_29 (14. Dez 2005)

Das passt schon!!

Nach jedem Attributseintrag gehört einfach!!

Oder habt ihr

Main-Class:klasse

Geschrieben??

Dort ist das Leerzeichen gemeint..

Schön langsam wirds nervig...


1. Wie sieht der Ordner aufbau von dem Ordner Klassen aus??

Ist dort auch der Images ordnen drinnen??

2. Hast du jetzt ein package?? Oder warum schreibt der immer Klassen/Concept?

3. Zeig mir deine Manfiest Datei!


----------



## Mag1c (14. Dez 2005)

Hi,

er hat noch nicht geschrieben, ob es ohne Leerzeichen am Ende nun geht.

Gruß
Mag1c


----------



## babuschka (14. Dez 2005)

ach so - das mit dem Leerzeichen war nur etwas verwirrend! dachte mir aber schon, dass es so gemeint ist!

mein *package * Klassen beinhaltet den Ordner images. und da ich es auch mit Eclipse ausführen kann, müsste es ja stimmen!

manifest lautet:

```
Manifest-Version: 1.0
Main-Class: Klassen.Concept
```


----------



## babuschka (14. Dez 2005)

also ich kann es so oft überprüfen wie ich will! irgendwie finde ich jetzt wirklich nix mehr!

@thE 29:hat es denn bei dir geklappt??? ganz sicher???


----------



## thE_29 (14. Dez 2005)

Jo, nur habe ich kein Package gehabt!

Du hast es mir auch ohne package geschickt!


----------



## babuschka (15. Dez 2005)

ich glaubs nicht!  :shock: 

hab jetzt einfach mal alles folgendermaßen gemacht:
Aufbau ist so:
+---classes 
| +---images 
+---jdom 
| +---META-INF 
| \---org 
| \---jdom 
| +---adapters 
| +---filter 
| +---input 
| +---output 
| +---transform 
| \---xpath 

also die .class-Dateien und die images sind in dem Ordner Klassen. ist aber jetzt nicht als package definiert!

Manifest sieht so aus:

```
Manifest-Version: 1.0
Main-Class: Concept
```

Also eigentlich falsch! nach meiner Meinung... denn ich bin ja in meinem übergeordneten Ordner dienstag und rufe dann das Manifest (in dienstag) und die Concept.class, die in classes steckt auf - ohne den Ordner im Manifest anzugeben!!! aber ja eigentlich richtig, da in der jar der Ordner classes nicht existiert!!!

mann o mann! ich danke euch alles vielmals!!!  :applaus:


----------



## thE_29 (15. Dez 2005)

Das bei mir classe ist, ist wegen dem JBuilder 

Da ist der Source, im Ordner src, Backup im Ordner bak und die Klassen im Ordner Classes!!

Das hat nichts mit Packages zum tun 

Er würde dann erst in den weitern Ordner dann packages machen!


Außerdem ist es ja viel schöner, wenn Sourcen und Class Dateien getrennt sind und nicht alles in 1em Ordner rumgurkt


----------



## babuschka (15. Dez 2005)

aber anders scheint es nicht zu gehen - zumindest bei mir! beim default package meldet er mir trotzdem weiterhin, dass er die Klasse nicht findet!  :wink:


----------



## Mag1c (15. Dez 2005)

Hi,

@ksh84:
dann machst du definitiv an einer Stelle was falsch und verrätst es uns nicht 

Gruß
Mag1c


----------



## babuschka (15. Dez 2005)

genau, sonst wärs ja langweilig!  8) 

wenn ich doch noch was finde, poste ich es hier rein! im Moment freu ich mich nur drüber, dass es endlich mal klappt!


----------



## thE_29 (15. Dez 2005)

Dann musst du die Ordner Strukter der Packages schon beibehalten 

Das wird dein Problem gewesen sein...


----------

