Kleines Java-Programm geschrieben, 30 Dateien?

Status
Nicht offen für weitere Antworten.

facilityManager

Aktives Mitglied
Hallo

Ich habe nun ein schickes kleines Java-Programm geschrieben, und möchte es zum Download anbieten. Ich find's aber nicht wirklich cool das die Grafiken einfach so in einem Ordner sichtbar sind und ausgetauscht werden können. Gibt es da einen Trick, das alles in eine einzige Datei zu verpacken? z.B. eine EXE oder ähnliches?? Das brauche ich für Mac, Linux und Windows. Wie macht ihr das?
 

DiscoDon

Mitglied
Normalerweise packt man diese Dateien alle in ein Java Archiv namens Jar. Dies ist dann bei richtiger Konfiguration auch wie eine exe unter Windows mit einem Doppelklick zu starten. Und das beste ist, dass das sogar plattformunhabhängig ist. Such also mal nach einam Buildbefehl in deiner IDE, zum einfachen Erstellen eines solchen Archivs.

DiscoDon
 

facilityManager

Aktives Mitglied
Leider klappt das nicht so recht... wie es aussieht, fehlen in der JAR sämtliche Grafiken und Sounds. Eclipse bietet mir da auch nicht wirklich an, diese hinzuzufügen.

Meine Projektstruktur sieht so aus (im Navigator, Eclipse):

Code:
PROJEKT
bin (*.class Dateien)
|-pics (viele Bilder)
|-sound (viele Sounddateien)
src (*.java Dateien)

Wie bringe ich Eclipse bei, alles außer die *.java Dateien in die JAR zu legen, so das sie ausführbar ist und auch die Grafiken und Bilder enthält? Ich habe keine Packages, weil es nur ein schnelles "quick-and-dirty" Übungsprojekt war...
 

facilityManager

Aktives Mitglied
Nein, kann ich nicht :-(
RMT auf Projekt > "Export..." > "Runnable JAR File"

Der Wizzard bietet mir keinerlei Setup-Möglichkeit. Vermutlich muss ich vorher irgendwo eine "Launch Configuration" erstellen. Wo macht man das? Die Einstellungen von "Run as..." > "Java Application" bewirken hier nichts, da ich die Einstellung bei "Launch Configuration" nicht anwählen kann. Erscheint nicht zur Auswahl. Sind wohl zwei verschiedene Dinge.
 
B

Beni

Gast
solquery hat gesagt.:
Meine Projektstruktur sieht so aus (im Navigator, Eclipse):

Code:
PROJEKT
bin (*.class Dateien)
|-pics (viele Bilder)
|-sound (viele Sounddateien)
src (*.java Dateien)

Im "bin"-Ordner haben Bilder und auch anderes nichts verloren. Der "bin"-Ordner wird von Eclipse erstellt und verwaltet, nicht vom Programmierer. Du kannst die Bilder in jeden anderen Ordner schieben (persönlich verwende ich auch den "src"-Ordner, da die Bilder a) zum Programm gehören und b) so durch "ClassLoader.getResource" geladen werden können)

Im Export-Dialog kannst du dann die Bilder einbinden (Im Menü über File > Export > Java > Jar File). Auf der zweiten Seite kannst du für jede Datei einzeln bestimmen ob sie in das JAR kommt oder nicht.
export.png
 

facilityManager

Aktives Mitglied
Danke für den Tipp! Nun habe ich die Bilder und Sounds nach src verschoben. Ich habe keine Packages, nur den src und bin Ordner. Im src Ordner befinden sich nun sounds und pics.

Beim Ausführen als JavaApp in Eclipse fehlen nun die Bilder und Sounds.

Bisher funktionierte es so:

Code:
	private BufferedImage[] loadPics(String path, int pics) {
		BufferedImage[] anim = new BufferedImage[pics]; //BufferedImage Array in der Größe der Einzelbilder erzeugen
		BufferedImage source = null;
		
		//Bild einlesen
		URL pic_url = getClass().getClassLoader().getResource(path);
		try {
			source = ImageIO.read(pic_url); //Quellbild laden
		} catch (IOException e) {}
		
		//Einzelbilder aus Imagemap raus kopieren und in anim Array legen
		for(int x=0; x < pics; x++) {
			int pWidth = source.getWidth();
			int pHeight = source.getHeight();
			anim[x] = source.getSubimage(x * (pWidth / pics), 0, pWidth/pics, pHeight);
		}
		
		return anim;
	}

ein beispielhafter Aufruf aus der main Methode:
Code:
loadPics("pics" + File.separator + "rocket.gif",8);

in den Project Properties ist unter Java Build Path > src > all included. Also demnach eigentlich auch pics und sounds...
 
B

Beni

Gast
Versuch mal einen Refresh (Taste F5) von deinem Projekt, vielleicht sind die Bilder nicht richtig geladen.

Benutze auch "/" anstelle von "File.separator". Laut API muss der Pfad "/" enthalten.
 

facilityManager

Aktives Mitglied
Das ist seltsam. File.separator liefert mir zwar einen \ unter Windows XP, aber innerhalb von Eclipse (Run as... Java Application) läuft es damit einwandfrei!

Wenn ich File.separator benutze, funktioniert die exportierte Runnable JAR auf dem Mac!

Wenn ich "/" benutze, funktioniert die exportierte Runnable JAR weder auf Windows noch auf Mac.

Nun habe ich es bei File.separator belassen, allerdings klappt das mit der Runnable JAR immer noch nicht so richtig. Ich kann das Java Programm unter XP nur über die Konsole anschmeißen, wenn ich die JAR entpackt habe.
 

Wildcard

Top Contributor
solquery hat gesagt.:
Das ist seltsam. File.separator liefert mir zwar einen \ unter Windows XP, aber innerhalb von Eclipse (Run as... Java Application) läuft es damit einwandfrei!
Natürlich, weil ein \ auf Fileebene (Windows Systeme) gültig ist, aber fehl am Platz in einer URL, daher verwende immer nur '/'
 
H

Heize

Gast
du must jar nicht entpacken versuche es mit java -jar blabla.jar das ist unter Konsole
 

Empire Phoenix

Top Contributor
Am Rande die VM scheint nicht so gutmütig zu sein was gross und kleinschreibung angeht, während eclipse dieses scheinbar ignoriert (zumindest bei mir)
 

Ebenius

Top Contributor
Empire Phoenix hat gesagt.:
Am Rande die VM scheint nicht so gutmütig zu sein was gross und kleinschreibung angeht, während eclipse dieses scheinbar ignoriert (zumindest bei mir)
Ob Dateinamen Groß-/Kleinschreibung unterscheiden hängt vom Dateisystem und damit auch vom Betriebssystem ab. Unter Linux "ignoriert" das Eclipse keines Falles. In JAR-Dateien gibt's Groß-/Kleinschreibung. Man sollte daher immer auf Groß-/Kleinschreibung achten.
 

Empire Phoenix

Top Contributor
Was ich meinte ist, das Eclispe unter Windows gross/kleinschreibung ignoriert, während es die Vm bei jar's (auch unter windows) nicht tut, böse Fehlerquelle
 
S

Strahli

Gast
Hallo!

Ich hab ein ähnliches Problem .. bei mir werden die Bilder leider auch net angezeigt ... hab versucht eure Bisherigen Tipps anzuwenden .. aber irgendwie ohne erfolg

Code:
	private void init() {
		this.setSize(800, 600);
		this.add(new myPanelStart( (".\\src\\aimages\\HinterStart.jpg"), this));
		this.setResizable(false);//macht das fenster nicht vergrößerbar
		
	}

so binde ich die Bilder ein die im Source Ordner im Ordner aimages liegen... funktioniert so auch wunderbar ..
aber nicht mehr in der Jar ..

ideen?

Danke Strahli
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Kleines Werkzeug zum Anzeigen von Mehrfachvererbung mit Interfaces in Java Tools - Maven, Gradle, Ant & mehr 5
G Java ChatApplet im lokalen netzwerk. kleines problemchen ^ Tools - Maven, Gradle, Ant & mehr 3
C Kleines Problem mit Maven und Resourcen. Tools - Maven, Gradle, Ant & mehr 3
T Kleines rechnerApplet zum Testen Tools - Maven, Gradle, Ant & mehr 3
H eigenes kleines Forum Tools - Maven, Gradle, Ant & mehr 6
F PQ-Formel berechnen -> kleines Problem Tools - Maven, Gradle, Ant & mehr 3
P kleines Game, IceBlox als Pauliblox... Tools - Maven, Gradle, Ant & mehr 2
H Maven NetBeans Java Application ohne Manifest-Datei Tools - Maven, Gradle, Ant & mehr 7
D Java Programm veröffentlichen am Besten modular Tools - Maven, Gradle, Ant & mehr 28
H Maven Verbindung Java Projekt und Jenkins Build job Tools - Maven, Gradle, Ant & mehr 21
Q Java Eclipse Fehlermeldung bei Installation Tools - Maven, Gradle, Ant & mehr 3
D Maven Abhängigkeiten überprüfen auf Kompatibilität mit einer anderen Java-Version Tools - Maven, Gradle, Ant & mehr 11
R Webstart Java 11 ohne Web Start Tools - Maven, Gradle, Ant & mehr 5
M Java mit Modulen kompilieren klappt nicht Tools - Maven, Gradle, Ant & mehr 9
R Java mitnehmen Tools - Maven, Gradle, Ant & mehr 14
W Java on Cloud - which Provider Tools - Maven, Gradle, Ant & mehr 0
S Python-Code mit Java ausführen Tools - Maven, Gradle, Ant & mehr 13
B Java auf Smartcards?! Tools - Maven, Gradle, Ant & mehr 9
J Java App im Mac Store veröffentlichen Tools - Maven, Gradle, Ant & mehr 0
M Maven (Java EE, WAR) Eigener Buildschritt - Manipulation von Dateien Tools - Maven, Gradle, Ant & mehr 4
VfL_Freak Desktopverknüpfung über den Java-Cache erstellen Tools - Maven, Gradle, Ant & mehr 0
S New version released: Java Switcher for 1.8.0_112 and Windows x64 only Tools - Maven, Gradle, Ant & mehr 4
S Java 32 Bit and 64 Bit Switcher for Windows XX [64 Bit only] Tools - Maven, Gradle, Ant & mehr 0
F java.lang.ClassNotFoundException auf anderem Rechner Tools - Maven, Gradle, Ant & mehr 0
S Applet Java Testen - Ergebnis wird nicht angezeigt, nur leeres Feld Tools - Maven, Gradle, Ant & mehr 15
T Java Applikation an Clients verteilen Tools - Maven, Gradle, Ant & mehr 5
S Java Web Start wird nicht ausgeführt Tools - Maven, Gradle, Ant & mehr 1
J Applet Java fragt Verzeichnis ab Tools - Maven, Gradle, Ant & mehr 0
J Applet .java.policy und neue Javaversion Tools - Maven, Gradle, Ant & mehr 4
R Maven woher gewusst, dass mein Java-Code commons-lang braucht? Tools - Maven, Gradle, Ant & mehr 0
O Applet Selbstsignierte Applets in Java 7 Update 51 Tools - Maven, Gradle, Ant & mehr 19
M Was muss man installiert haben damit Java Applets im Browser gehen Tools - Maven, Gradle, Ant & mehr 2
T ClassNotFound erfordert ständiges Löschen des Java-Cache. Tools - Maven, Gradle, Ant & mehr 2
P Applet Java Applet läuft im Browser nicht mehr (HTTPClient - NoClassDefFoundError) Tools - Maven, Gradle, Ant & mehr 3
B Webstart Java Webstart hängt sich beim Laden auf! Tools - Maven, Gradle, Ant & mehr 8
T Daten per POST-Methode aus Java-Applet nach php-Script senden Tools - Maven, Gradle, Ant & mehr 3
ChrisX Java im Autostart sinnvoll? Tools - Maven, Gradle, Ant & mehr 4
HaukeG Maven Java Web-Application in Eclipse - Abhängigkeiten zwischen den Projekten Tools - Maven, Gradle, Ant & mehr 10
F [Java Webstart] Webspace gesucht... Tools - Maven, Gradle, Ant & mehr 6
M Java Application startet bei verschiedenen JRE's nicht Tools - Maven, Gradle, Ant & mehr 7
B Wie kann man unter Windows 7 file types mit Java Applikationen verknüpfen? Tools - Maven, Gradle, Ant & mehr 5
D Java mit .bat starten Tools - Maven, Gradle, Ant & mehr 1
S Java Applikation als Windows Service einrichten Tools - Maven, Gradle, Ant & mehr 23
C Aufruf eines Java Programms mittels ant MIT Parametern Tools - Maven, Gradle, Ant & mehr 2
P Java Applikation auf Server Tools - Maven, Gradle, Ant & mehr 7
schlingel Applet Java-Sicherheitswarnung wegen alter JRE-Version Tools - Maven, Gradle, Ant & mehr 13
S Applet Applet mit C# öffnen: java.lang.SecurityException: Permission denied (WinXP) Tools - Maven, Gradle, Ant & mehr 8
W CVS Keine Verbindung zu cvs.dev.java.net möglich Tools - Maven, Gradle, Ant & mehr 5
E Java Applet bearbeiten Tools - Maven, Gradle, Ant & mehr 8
J Webstart Grenzen von Java Webstart? Tools - Maven, Gradle, Ant & mehr 2
B Buckminster: Plugin Version in Java source File einfügen Tools - Maven, Gradle, Ant & mehr 4
T Ant ant-variable aus Java Tools - Maven, Gradle, Ant & mehr 4
F Ant ANT javac class-Dateien von entfernten JAVA-Klassen löschen Tools - Maven, Gradle, Ant & mehr 11
J Java Webstart beschleunigen und Verlauf anzeigen Tools - Maven, Gradle, Ant & mehr 3
H Java Applet Problem beim einbinden in HTML Tools - Maven, Gradle, Ant & mehr 3
L PHP + Java Applet Kommunikation Tools - Maven, Gradle, Ant & mehr 9
S Probleme mit Kombination Java JApplet;MySQL;Webserver Tools - Maven, Gradle, Ant & mehr 3
nabla Einbinden von externen Java und C Bibliotheken Tools - Maven, Gradle, Ant & mehr 5
G Java-Applet Probleme beim Browser Tools - Maven, Gradle, Ant & mehr 14
A Java-Applet Sandbox deaktiviren? Tools - Maven, Gradle, Ant & mehr 2
B Java-Applet geht nicht (auf dem Webserver) Tools - Maven, Gradle, Ant & mehr 9
I In Java Applets drucken Tools - Maven, Gradle, Ant & mehr 2
D Java Webstart startet .jar file nicht Tools - Maven, Gradle, Ant & mehr 13
S Java Applet per Klick starten? Tools - Maven, Gradle, Ant & mehr 6
U Java Webstartproblem ab Version 1.6_11 Tools - Maven, Gradle, Ant & mehr 7
S Java Ant per Console starten Tools - Maven, Gradle, Ant & mehr 3
M Java Applet - enforce use of older JRE Tools - Maven, Gradle, Ant & mehr 3
N Wie Java-Programm zu Applet machen?! Tools - Maven, Gradle, Ant & mehr 2
M Java Swing Anwendung als Webanwendung Tools - Maven, Gradle, Ant & mehr 6
Raidri Java Programme installieren Tools - Maven, Gradle, Ant & mehr 5
S Java Webstart Tools - Maven, Gradle, Ant & mehr 3
V applet Java 1.6 -> 1.5 Problem ... wie mit Ant zu lösen? Tools - Maven, Gradle, Ant & mehr 7
E Java Applet - Double Buffering Problem (Flackern) Tools - Maven, Gradle, Ant & mehr 6
S Java-Applet Steuerung IO Karte am Drucker-Port Tools - Maven, Gradle, Ant & mehr 4
T Java Anwendung installieren Tools - Maven, Gradle, Ant & mehr 7
T Statistiken zur Verbreitung von Java Tools - Maven, Gradle, Ant & mehr 5
D Java-Anwendung mit Bildern (JPG) verfügbar machen Tools - Maven, Gradle, Ant & mehr 7
T Applet soll Java Programm starten Tools - Maven, Gradle, Ant & mehr 2
P Java-Applet funktioniert unter WINXP nicht Tools - Maven, Gradle, Ant & mehr 2
N Java 1.6 Applet auf älteren Versionen ausführbar? Tools - Maven, Gradle, Ant & mehr 4
F Probleme mit Java WebStart; Hauptklasse konnte nicht gef. Tools - Maven, Gradle, Ant & mehr 18
J Java Applet bei mouseover mit Tooltip Tools - Maven, Gradle, Ant & mehr 3
M Autostart unter Windows für Java Aplikation Tools - Maven, Gradle, Ant & mehr 10
J ANT: run/java: NoClassDefFoundError Tools - Maven, Gradle, Ant & mehr 2
C chatProgramm in java Tools - Maven, Gradle, Ant & mehr 5
L Java Webstart Tools - Maven, Gradle, Ant & mehr 6
B Java-Applet startet nicht aus dem Browser Tools - Maven, Gradle, Ant & mehr 1
K Java-Applet Uhrzeit Tools - Maven, Gradle, Ant & mehr 2
T Java Applett: Rückwärtskompabilität Tools - Maven, Gradle, Ant & mehr 2
G JApplet parallel zu Java-Applikation entwickeln Tools - Maven, Gradle, Ant & mehr 11
H [gelöst] Java Stimmgerät bzw. Frequenzerzeugung gesucht Tools - Maven, Gradle, Ant & mehr 2
A RSS-Feeds auslesen mit JAVA speichern und Applet übergeben Tools - Maven, Gradle, Ant & mehr 2
D Java Web Start im Browser laufen lassen Tools - Maven, Gradle, Ant & mehr 10
W Java-Applet Funzt ned! Tools - Maven, Gradle, Ant & mehr 3
V dreieck ausfüllen (java) Tools - Maven, Gradle, Ant & mehr 6
M Java Security Tools - Maven, Gradle, Ant & mehr 2
B Java Applet im Systemtray Tools - Maven, Gradle, Ant & mehr 2
P Java Applets und Power Point Tools - Maven, Gradle, Ant & mehr 11
G Jar File Java Web Start Tools - Maven, Gradle, Ant & mehr 2
H Java 1.4 Applet, IE 6 und Java 6 funktioniert nicht zusammen Tools - Maven, Gradle, Ant & mehr 2

Ähnliche Java Themen

Neue Themen


Oben