# Eclipse vergißt beim Exportieren Resources-Ordner



## Wambui (22. Sep 2014)

Hallo,

ich habe in meinem Eclipse-Projekt auf der Ebene des src-Ordners einen Ordner "resources" mit benötigten Dateien während der Laufzeit.
Wenn ich das Projekt in eine ausführbare Jar-Datei exportieren will und wird der Ordner "resources" inzwischen nicht mehr mitberücksichtigt und es werden eine Menge Compiler-Warnungen ausgegeben.

Da das Exportieren bereits schon einmal erfolgreich funktionierte, nehme ich an, dass ich unbewusst etwas in Eclipse verstellt hatte. Gibt es eine Möglichkeit Eclipse mitzuteilen, welche Ordner es bei dem Export berücksichtigen soll? Oder was kann die Ursache für das fehlerhafte Exportieren sein?

Grüße

Wambui


----------



## stg (22. Sep 2014)

Schau mal hier:
https://www.cs.utexas.edu/~scottm/cs307/handouts/Eclipse Help/jarInEclipse.htm


----------



## Wambui (22. Sep 2014)

Vielen Dank für den Link. Das hilft leider auch bei der schrittweisen Anleitung nicht weiter. 
Selbst wenn ich definitiv den Ordner markiere, wird er nicht in das Jar-File integriert.


----------



## EasyEagle (23. Sep 2014)

Hi Wambui,
wenn du einen Rechtsklick auf dein Projekt machst, dann "Build Path" -> "Confgure Build Path ..." erscheint ein Popup mit den Properties zu deinem Projekt. Ist dort unter dem Reiter "Source" dein Resources-Ordner enthalten?


----------



## Wambui (23. Sep 2014)

Hi EasyEagle,

guten Morgen. Ich habe das gerade noch einmal gecheckt:


EasyEagle hat gesagt.:


> Ist dort unter dem Reiter "Source" dein Resources-Ordner enthalten?


Unter dem Reiter "Source" habe ich die Einträge
"FeeCalculator/resources" 
 Included: (All)
 Excluded: (All)
 Native library location: (None)
 Ignore optional compile problems: No

und
"FeeCalculator/src"
 Included: (All)
 Excluded: (All)
 Native library location: (None)
 Ignore optional compile problems: No

Ich habe eine Zeit lang nicht den Export gnutzt und er hatte auch schon korrekt funktioniert. Nur eben jetzt schreibt er den Ordner resources aus mir nicht nachvollziehbaren Gründen nicht mehr ins Jar-File rein.


----------



## EasyEagle (23. Sep 2014)

Hmm...
du kannst bei Rechtsklick auf den Resource Ordner unter "Build Path" -> "use as Source Folder" den Ordner as Source deklarieren.
Aber das ist meines Wissen das Selbe wie der Weg den ich oben beschrieben hab (Projekt -> Build Path -> Reiter Source)

Beim Export als Jar kommt ja das Fenster "JAR File Specification" dort kannst du unter "Select the resources to export" auswählen was alles exportiert werden soll. Wenn der Resource Ordner nicht als Source Ordner deklariert ist, wird er an dieser Stelle auch nicht angezeigt.
Ansonsten müsstest du ihn an dieser Stelle selektieren können und damit mit ins Jar exportieren.

Mehr fällt mir jetzt leider auch nicht ein


----------



## Wambui (23. Sep 2014)

Ich habe das mal ausprobiert, ohne Veränderung des Resultats. Inzwischen habe ich auch feststellen können, dass der Export einer einzelnen Datei aus diesem Projekt dieselbe Meldung bringt und abbricht. Allerdings diese Jar-Datei läßt sich ausführen.
Wahrscheinlich ist da irgendetwas zerschossen. Ich nur nicht was.


----------



## Wambui (24. Sep 2014)

Hallo,

ich habe jetzt festgestellt, dass Eclipse beim Exportieren die Inhalte des resources-Ordners, der immer noch nicht angelegt wird, auf die oberste Ebene in dem Jar-File verteilt.
Ich hatte jetzt den alten Ordner gelöscht und als Source-Folder neuangelegt und mit den Dateien befüllt. Der Jar-Export läuft jetzt ohne Fehlermeldung ab, aber wie gesagt wird der Ordner nicht angelegt, die darin enthaltenen Dateien auf die Ebene darüber verteilz.

Grüße
Wambui


----------



## anti-held (25. Sep 2014)

Es werden ja auch alle Dateien in dem Source Folder direkt reinkopiert.
wenn du einen resources Ordner in deinem Jar willst, musst du in deinem Source Folder einen resources - Ordner anlegen.


----------



## Wambui (25. Sep 2014)

??????


anti-held hat gesagt.:


> Es werden ja auch alle Dateien in dem Source Folder direkt reinkopiert.
> wenn du einen resources Ordner in deinem Jar willst, musst du in deinem Source Folder einen resources - Ordner anlegen.


Sorry, habe ich mich falsch ausgedrückt bzw. ist irgendetwas falsch verstanden wurden?

Ich lege definitiv einen Source-Folder an und befülle ihn mit Dateien. Dieses Dateien kommen ins Jar-File, der Source-Folder wird ignoriert.

Ich habe inzwischen einen neuen Workspace angelegt, ein neues Projekt mit Main-Klasse, einem Source-Folder inklusive einer Textdatei angelegt. Anschliessend habe ich die Exportfunktion durchgeführt und wieder fehlt der Ordner. Die Textdatei liegt auf oberster Ebene.

Langsam verstehe ich die Welt nicht mehr.


----------



## anti-held (25. Sep 2014)

Dein Projekt muss dann so aussehen:

<projektname>
  src                  (sourcefolder)
        de.bla.bla  (packages)
                Main.java (Java Dateien)
  resources        (sourcefolder)
        resources  (normaler ordner oder package)  <-- dieser ordner erzeugt den Unterordner im JAR File
              yourfile.txt

Zugreifen kannst du dann darauf nach dem Export über


```
static public void main(String[] args) throws IOException {
		// lesen
		BufferedReader reader = new BufferedReader(new InputStreamReader(TreemapTest.class.getClassLoader().getResourceAsStream("resources/yourfile.txt")));
		String line = "";
		while ((line = reader.readLine()) != null) {
			System.out.println(line);
		}
		
		// verwenden
		Properties properties = new Properties();
		properties.load(TreemapTest.class.getClassLoader().getResourceAsStream("resources/yourfile.txt"));

		System.out.println(properties.getProperty("test"));
```

Beim Export sollte
Package required libraries into generated JAR
eingestellt werden


----------



## Wambui (25. Sep 2014)

Prima,


> resources (sourcefolder)
> resources (normaler ordner oder package) <-- dieser ordner erzeugt den Unterordner im JAR File


das hat jetzt soweit geholfen, dass der Ordner exportiert wird.
Das hatte wie gesagt monatelang funktioniert. Ich muß nur irgendwie "resources" in einen Source-Ordner umgewandelt haben, ohne dass es mir bewusst war.

Besten Dank für Deine Unterstützung.

Wambui


----------

