.jar-Datei in .exe-Datei konvertieren?
Hallo,
also prinzipiell habe ich das so verstanden, dass man mit einer .bat-Datei die .jar-Datei aufruft und das ganze in einen Bat-to-Exe-Converter packt. Das habe ich auch gemacht, allerdings gibt es ein Problem: Ich möchte gerne die Option "Beim beenden löschen" benutzen, da die erzeugte Jar-Datei verschwinden soll, sobald man fertig ist. Nur wenn ich das auswähle, bekomme ich beim ausführen der Exe die Fehlermeldung: "Error: Unable to access jarfile Datei.jar". Das klingt auch logisch, vermutlich weil er nur dieses Programm aufruft und so schnell dann fertig ist, dass er sie bereits wieder gelöscht hat. Wie kann ich so etwas umgehen? Hatte zum Beispiel daran gedacht, den PC noch nebenbei bis 1000 oder so hochzählen zu lassen, damit er nicht direkt beendet.
Wenn ich das ganze mit der Option "Nicht löschen" mache, läuft auch alles super, allerdings wird dann jedes mal beim ausführen die Jar-Datei neu ausgepackt.
Ach ja und auf die Frage, warum ich eine Exe-Datei haben möchte: Ich hätte gerne bei der Datei ein Icon und Exe ist doch auch unabhängiger von Java.
Vielen Dank für gute Vorschläge! :)
4 Antworten
Die Antwort auf deine Frage wäre hier zu finden:
http://launch4j.sourceforge.net/docs.html
Allerdings muss man dazu sagen, dass dein eigentliches Ziel "unabhängiger von Java" zu sein auch damit nicht erreicht werden kann. In der exe-Datei steckt letztlich eine Jar-Datei die vom Wrapper ausgeführt wird.
Wenn Du Probleme in der Handhabung hast wende dich an deren Support-Forum: https://sourceforge.net/p/launch4j/discussion/332684/
Vielen Dank für deine Antwort. Leider war ich etwas dumm und habe gar nicht verstanden, was der PC von mir wollte, aber jetzt habe ich es hinbekommen. Launch4j war auch genau das Programm, was ich schon mal genutzt hatte, mir war nur der Name entfallen. Vielen Dank! :D
Ich hätte gerne bei der Datei ein Icon und Exe ist doch auch unabhängiger von Java.
Man merkt, dass Du gar nicht verstanden hast, wie Java überhaupt funktioniert. Du bist auf die Java Laufzeitumgebung angewiesen. Du kannst ein JavaProgramme ohne die Laufzeitumgebung nicht ausführen.
Wenn Du eine native Anwendung willst, ist Java schlichtweg die falsche Programmiersprache.
Und dieses Verstecken, dass es sich bei deiner Anwendung um eine Java Anwendung handelt, ist auch dumm.
Ich will absolut gar nichts verstecken, zeig mir wie ich bei einer Jar-Datei ein Icon hinzufüge und ich "verstecke" nichts mehr...
Falls die Lösung von threadi nicht funktioniert:
http://winrun4j.sourceforge.net/
Ebenfalls eine Alternative zu launch4J.
Vielen Dank für deine Antwort, es hat jetzt sehr gut mit Launch4j funktioniert :)
Nein ist nicht unabhängiger da immer Java benötigt wird
Ich bekomme die Nachricht, dass meine Java-Version zu aktuell ist, um das Programm zu installieren.