# Jar- Sperren oder nur als auszuführende Datei



## ballibum (27. Apr 2009)

Hallo tolles Forum,
ich habe ein Programm geschrieben, welches über eine Jar-Datei ausführbar ist nun möchte ich jedoch, dass dieses Programm nur auszuführen ist und nicht fälschlicherweise entpackt wird. Gibt es eine Möglichkeit diese Datei so zu schreiben, das sie nur ausführbar ist oder muss ich wirklich die Datei verschlüsseln damit Sie nicht entpackt werden kann?
mfg
ballibum


----------



## tfa (27. Apr 2009)

Wie soll man eine JAR ausführen, ohne sie auspacken zu können, wenn sie verschlüsselt wäre?
Auspacken geht grundsätzlich immer.


----------



## ballibum (27. Apr 2009)

Hi, ich möchte einfach verhindern das jemand die Datei entpackt und mit ihr nichts anzufangen weiß. Entpacken durch WinRar etc. ist ja durchaus möglich. Das Programm soll aber auch weniger Fundierten helfen, sprich es soll immer als Javaprogramm ausgeführt werden, ohne das sich jemand fragt "Häh, was nun?!?".
mfg
ballibum


----------



## tfa (27. Apr 2009)

Achso. Das ist Sache des Betriebssystems, was passiert, wenn du auf eine JAR-Datei klickst oder sie in der Kommandozeile eintippst. An der Datei selbst kann man da nichts einstellen.
Unter Windows z.B. kann man das in den Dateitypen-Eigenschaften konfigurieren. Wenn Java installiert ist, sollte das richtige passieren.

Du kannst deine Java-Programme auch über eine Batch-Datei oder einen EXE-Wrapper starten lassen.


----------



## ballibum (27. Apr 2009)

okay, soetwas habe ich noch nie gemacht, aber dann wird es sicherlich mal zeit, was für eine programmiersprache findet dort anwendung?
mfg
ballibum
p.s. ansonsten erstmal vielen dank, ichw erde da schon etwas geeignetes finden


----------



## Wolfgang Lenhard (27. Apr 2009)

Hi, Du kannst die Jar sehr leicht mit launch4j in eine exe packen, oder lediglich eine exe generieren, die das jar startet, wenn man sie anklickt. Das ist sehr einfach.


----------



## sparrow (27. Apr 2009)

Wolfgang Lenhard hat gesagt.:


> Hi, Du kannst die Jar sehr leicht mit launch4j in eine exe packen, oder lediglich eine exe generieren, die das jar startet, wenn man sie anklickt. Das ist sehr einfach.




Von der Lösung aus der .jar eine .exe zu machen rate ich an dieser Stelle ab.
Du sperrst sonst jeden Benutzer aus der kein Windows verwendet.

Es gibt einen schönen Beitrag in den FAQs dazu: http://www.java-forum.org/java-faq-...ramme-zu-starten-java-archive-bat-exe-cd.html
Mein Vorschlag: Erstell eine kleine .bat-Datei für Windows-Benutzer und eine kleine .sh-Datei für Linux-Benutzer. Dann kann man schön nachvollziehen was genau beim Aufruf gemacht wird (u. U. werden ja auch Optionen für die VM mit gegeben).

Gruß
Sparrow


----------



## Wolfgang Lenhard (27. Apr 2009)

Ganz so schlimm ist es nicht. Man muss die jar nicht in die exe einbetten. Das ist bei launch4j lediglich ein Häckchen, das man setzen muss. Dann hat man halt zusätzlich zur jar eine exe-Datei, aber die jar ist nach wie vor verfügbar und das Programm läuft auch auf anderen Plattformen.


----------

