Java in Eclipse: Wo kann ich Dateien auf dem Dateisystem setzen, die ich will mit getResource laden? (Beispielsweise Bilder für eine ImageIcon)

StackOverflow https://stackoverflow.com/questions/270197

Frage

Ich weiß, dass die Datei, in dem getClass () sein muss. GetResource (Dateiname) finden kann, aber ich weiß nicht, wo das ist.

Ich habe Interesse sowohl in denen die Dateien auf das Dateisystem setzen sich, und wie über die Verwendung von Eclipse Funktionalität zu gehen, um die Ressourcen einzurichten.

War es hilfreich?

Lösung

Für Eclipse der Regel alles, was Sie tun müssen, ist einen Ordner irgendwo in Ihrem Quellcode-Verzeichnis einrichten. Wenn zum Beispiel das Verzeichnis ist Ihre Quelle enthält /src dann können Sie einen /src/resources Ordner erstellen Sie Ihre Bilder / Dateien in platzieren. Dann in Ihrer Klasse, die Sie eine getResource("/resources/image.png") tun, um es abzurufen.

Sie können auch das Bild / Datei im gleichen Ordner / Paket platzieren, wie die Klasse versuchen, darauf zuzugreifen, wenn Sie möchten (Beispiel: Ort der image.png im com.mycompany Paket mit der com.mycompany.Foo Klasse, die sie und Anruf zugreifen muss getResource("image.png")), aber ich gefunden habe, ist es einfacher, Ressourcen wie Bilder zu halten und andere Dateien in ihrem eigenen speziellen Verzeichnis außerhalb des Klassenordners -. sie sind einfach leichter auf diese Weise zu verwalten

In Eclipse, wenn Sie einen Build tun, werden die Dateien in diesem Verzeichnis Ressource zusammen mit Ihren kompilierten Klassen kopieren in Ihr Build-Verzeichnis werden.

Es ist wichtig zu beachten, dass, wenn Sie wandte sich in Eclipse auf „Automatisch Build“ haben (wie die meisten Menschen tun), um alle Ressourcen in diesem Verzeichnis, das außerhalb von Eclipse geändert (dh Sie ein Bild in einem Bildbearbeitungswerkzeug bearbeiten), dass die IDE kann diese Änderung nicht immer erkennen. Normalerweise macht eine Aktualisierung auf dem Projektordner wird sichergestellt, dass die Datei in diesen Situationen im Build aktualisiert wird.

Andere Tipps

Sie können entweder im src Ordner neben Ihren Klassen setzen, oder Sie können einen neuen Quellordner für die Zwecke erstellen (in der Regel genannt Ressourcen ), obwohl man sie aus dem Code identisch finden werden.

Dann erhalten Sie bei ihnen getResource("/com/x/y/foo.png") verwenden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top