Wie kann ich eine Java-Quelldatei (*.java) oder eine Klassendatei (*.class) in eine .exe-Datei umwandeln?
Ich brauche auch ein Installationsprogramm für mein Programm.
Wie kann ich eine Java-Quelldatei (*.java) oder eine Klassendatei (*.class) in eine .exe-Datei umwandeln?
Ich brauche auch ein Installationsprogramm für mein Programm.
Das Java Packager-Tool kompiliert, verpackt und bereitet Java- und JavaFX-Anwendungen für die Verteilung vor. Der Befehl javapackager ist die Befehlszeilenversion.
- Die Dokumentation von Oracle
Le site javapackager
wird mit dem JDK ausgeliefert. Es kann .exe-Dateien mit der Option -native exe
Flagge, neben vielen anderen Dingen.
WinRun4j ist ein Java-Startprogramm für Windows. Es ist eine Alternative zu javaw.exe und bietet die folgenden Vorteile:
- Verwendet eine INI-Datei zur Angabe von Klassenpfad, Hauptklasse, vm args, program args.
- Benutzerdefinierter Name der ausführbaren Datei, der im Task-Manager angezeigt wird.
- Zusätzliche JVM-Args für eine flexiblere Speichernutzung.
- Eingebauter Icon Replacer für benutzerdefinierte Icons.
- [weitere Aufzählungspunkte folgen]
- WinRun4J's Webseite
WinRun4J ist ein Open-Source-Dienstprogramm. Es hat viele Merkmale.
Packt Ihr JAR, Ihre Assets und eine JVM für die Verteilung auf Windows, Linux und Mac OS X und fügt eine native ausführbare Datei hinzu, damit es wie eine native Anwendung aussieht. Packr ist am besten für GUI-Anwendungen geeignet.
- packr README
packr ist ein weiteres Open-Source-Tool.
JSmooth ist ein Java Executable Wrapper. Er erstellt native Windows-Startprogramme (Standard-.exe) für Ihre Java-Anwendungen. Es macht die Java-Bereitstellung viel reibungsloser und benutzerfreundlicher, da es in der Lage ist, jede installierte Java VM selbst zu finden.
- Die Website von JSmooth
JSmooth ist quelloffen und verfügt über Funktionen, aber es ist sehr alt. Die letzte Version stammt aus dem Jahr 2007.
JexePack ist ein Kommandozeilen-Tool (ideal für automatisiertes Skripting), mit dem Sie Ihre Java-Anwendung (Klassendateien), optional zusammen mit ihren Ressourcen (wie GIF/JPG/TXT/etc), in eine einzige komprimiert 32-Bit-Windows-EXE, die unter Verwendung der Java-Laufzeitumgebung von Sun ausgeführt wird. Es werden sowohl Konsolen- als auch Fensteranwendungen unterstützt.
- Website von JexePack
JexePack ist Trialware. Für den produktiven Einsatz ist eine Zahlung erforderlich, und mit diesem Tool erstellte Exe-Dateien zeigen ohne Zahlung "Mahnungen" an. Außerdem war die letzte Version 2013.
InstallAnywhere macht es Entwicklern leicht, professionelle Installationssoftware für jede Plattform zu erstellen. Mit InstallAnywhere können Sie sich schnell an Branchenveränderungen anpassen, schneller auf den Markt kommen und Ihren Kunden ein ansprechendes Erlebnis bieten. Und Sie kennen die Anfälligkeit der OSS-Komponenten Ihres Projekts, bevor Sie sie ausliefern.
- Die Website von InstallAnywhere
InstallAnywhere ist ein kommerzielles/Unternehmenspaket, das Installationsprogramme für Java-basierte Programme erzeugt. Es ist wahrscheinlich in der Lage, .exe-Dateien zu erstellen.
Als Alternative zu .exe-Dateien können Sie eine JAR-Datei erstellen, die bei einem Doppelklick automatisch ausgeführt wird, indem Sie Hinzufügen eines Einstiegspunktes zum JAR-Manifest .
Eine ausgezeichnete Informationsquelle zu diesem Thema ist der Artikel von Excelsior " Java in EXE konvertieren - Warum, wann, wann nicht und wie ".
Siehe auch den begleitenden Artikel " Beste JAR zu EXE Konvertierungstools, kostenlos und kommerziell ".
Launch4j ist ein plattformübergreifendes Tool zum Verpacken von Java-Anwendungen, die als Jars verteilt werden, in leichtgewichtige, native Windows-Executables. Die ausführbare Datei kann so konfiguriert werden, dass sie nach einer bestimmten JRE-Version sucht oder eine gebündelte Version verwendet, und es ist möglich, Laufzeitoptionen wie die anfängliche/maximale Heap-Größe festzulegen. Der Wrapper bietet auch eine bessere Benutzerfreundlichkeit durch ein Anwendungssymbol, einen nativen Splash-Screen vor der JRE, einen benutzerdefinierten Prozessnamen und eine Java-Download-Seite für den Fall, dass die passende JRE nicht gefunden wird.
- Die Website von Launch4j
UPDATE : GCJ ist tot. Er war offiziell entfernt aus dem GCC-Projekt im Jahr 2016. Schon davor war es sieben Jahre lang praktisch aufgegeben worden, und in jedem Fall war es war nie ausreichend vollständig als brauchbare alternative Java-Implementierung zu dienen.
Suchen Sie sich einen anderen Java-AOT-Compiler.
GCJ: Der GNU-Compiler für Java kann Java-Quellcode in nativen Maschinencode kompilieren, einschließlich ausführbarer Windows-Dateien.
Obwohl nicht alles in Java unter GCJ unterstützt wird, insbesondere die GUI-Komponenten (siehe Welche Java-APIs werden unterstützt? Wie vollständig ist die Unterstützung? Frage aus dem FAQ ). Ich habe GCJ nicht viel benutzt, aber von den begrenzten Tests, die ich mit Konsolenanwendungen gemacht habe, scheint es in Ordnung zu sein.
Ein Nachteil der Verwendung von GCJ zur Erstellung einer eigenständigen ausführbaren Datei ist, dass die Größe der resultierenden EXE-Datei recht groß sein kann. Einmal habe ich eine triviale Konsolenanwendung in GCJ kompiliert und das Ergebnis war eine ausführbare Datei von etwa 1 MB. (Vielleicht gibt es Möglichkeiten, dieses Problem zu umgehen, die ich nicht kenne. Eine andere Möglichkeit wären Programme zur Komprimierung von ausführbaren Dateien).
Was die Open-Source-Installationsprogramme betrifft, so ist die Skriptfähiges Nullsoft-Installationssystem ist ein skriptfähiges Installationsprogramm. Wenn Sie neugierig sind, gibt es von Benutzern beigetragene Beispiele wie man das Vorhandensein einer JRE erkennt und sie automatisch installiert, wenn die erforderliche JRE nicht installiert ist. (Nur damit Sie es wissen, ich habe NSIS noch nie benutzt.)
Weitere Informationen zur Verwendung von NSIS für die Installation von Java-Anwendungen finden Sie unter meine Antwort für die Frage " Wie lassen sich Java-Anwendungen am besten verbreiten? "
Wir verwenden Install4J um Installationsprogramme für Windows- oder Unix-Umgebungen zu erstellen.
Es ist leicht anpassbar, bis zu dem Punkt, an dem Sie Skripte für spezielle Aktionen schreiben wollen, die nicht mit Standarddialogen durchgeführt werden können. Aber auch wenn wir Windows-Dienste damit einrichten, verwenden wir nur Standardkomponenten.
Ich glaube, Launch4J ist von der gleichen Firma (nur der Launcher - kein Installationsprogramm).
PS: Leider werde ich für diese Empfehlung nicht bezahlt. Ich mag dieses Werkzeug einfach.
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.