.class oder .jar in eine .exe umwandeln

tutor0

Grünschnabel
Ich suche nach einem Programm, das eine java datei in eine exe umwandelt.
Ich habe auf meinem Windows 7 PC mit eclipse ein java Programm geschrieben und würde dieses gerne auf einem Windows XP ausführen. Auf dem XP ist leider kein java installiert.

Ich habe schon Programme gefunden mit denen man jar - Dateien in exe umwandeln kann. Um die erstellten exe auszuführen wird allerdings entweder java benötigt oder es werden andere Errors ausgegeben.

Ich würde mich freuen, wenn mir jemand ein Programm vorschlagen oder einen Tipp geben könnte.

Danke im Voraus
 
Erstmal ein herzliches Danke an Fabio. Deine Antwort kam überraschend schnell.
Schade das man keine exe aus java - Dateien erstellen kann.

Ich hätte noch eine Frage.
Was ist der Sinn von solchen java zu exe Programmen, wenn ich anstatt einer .exe gleich eine .jar nehmen könnte?
 
Also meines erachtens nach, spielt das nur für den Endnutzer eine Rolle. Die Benutzer sind es gewöhnt eine Datei.exe auszuführen und keine Datei.jar. Einen anderen Sinn kann ich darin auch nicht erkennen.
 
Hi und willkommen bei tutorials.de,
die Jar-Datei in eine *.exe umzuwandeln wird wohl kein Problem darstellen. Allerdings wirst du kein Java-Programm (egal ob .exe, .jar, etc.) zum laufen bekommen, solange kein Java installiert ist.

Stimmt nicht ganz. Es gibt auch Tools, die Teile der JRE (JVM und API) in die .exe mit rein packen. Ob bzw. wie gut diese funktionieren, kann ich leider nicht beurteilen.
 
Es gibt aber auch Tools, die den User automatisch zur Java-Download-Page bringen, sofern die JRE nicht installiert ist.
Dann müsstest du aber natürlich für die verschiedenen Betriebssysteme verschiedene Versionen anbieten.
 
Huhu,

Wenn man das nötige Kleingeld hat, kann man sich JET kaufen.
Die fleißigen Russsen bei Excelsior in Novosibirsk haben nämlich eine Compiler Suite entwickelt, um Javaprogramme in nativen Code umzuwandeln.
Die gesamte Java 6 API wurde dafür portiert.

Der einzige Haken ist, dass dennoch eine Runtime im Programmordner sein muss, welche sich je nach Bedarf skalieren lässt.
Auch geht die Plattformunabhängigkeit flöten, da nur Windows und Linux (separat zu erwerben) Binaries erstellt werden können.

Vorteile sind jedoch unglaubliche Performance ("Swing" Elemente werden durch native Counterparts dargestellt), der deutlich reduzierte Speicherverbrauch sowie die Sicherheit des Codes (Kein dekompilierbarer Bytecode, sondern Maschinencode.


Alternativ kann man ein JRE mitliefern, welches dann vom Exe-Wrapper entsprechend genutzt wird.
Was jSmooth angeht:
Die Entwicklung liegt seit Jahren auf Eis.
Dementsprechend fehlt der Support für 32-bit Icons (Durch selber patchen nachrüstbar).

Auch gibt es keinen Support für Win Vista/7.

Das Problem:
Bei Start werden um User Temp Ordner zwei immer andersheißende temporäre Jars erstellt (oder eine, falls das Programm nicht in die .exe embedded wird.
Diese Dateien können unter Windows Vista/7 nicht nach Benutzung beim nächsten Neustart durch "MovefileEx" gelöscht werden, da "Delete on Reboot" Administratorrechte benötigt.
Dadurch stapeln sich im Tempordner die Jars.

In diesem Fall lösche ich einfach alle nicht offenen tempXYZ.jar bei jedem Programmstart.

Gruß,
 
Zuletzt bearbeitet:
Zurück