2010-04-22 19 views
31

Zrobiłem aplikację Java, którą chciałbym rozpowszechniać w systemach Windows, OSX i Linux bez dystrybucji pliku JAR. Użyłem wspaniałego opakowania Windows exe http://launch4j.sourceforge.net/, aby utworzyć plik .exe wraz z moją ikoną, która nie będzie przestraszyć użytkowników Windows.Konwersja .jar do pliku wykonywalnego OSX?

Czy są podobne opakowania, których mogę używać w systemie OSX/Unix? Ważnym czynnikiem jest to, że chciałbym mieć własną ikonę na pliku wykonywalnym (szczególnie dla użytkowników mac).

Dzięki!

Odpowiedz

30

Tak, w systemie Mac OS X jest program o nazwie Jar Bundler, który jest instalowany podczas instalacji wolny (zakładając, że masz już kopię Mac OS X) Xcode Developer Tools który pozwala na pakiet pliku JAR wewnątrz natywnego Mac Pakiet aplikacji OS X "* .app" z ładną i błyszczącą ikoną, podobnie jak inne aplikacje.

Aktualizacja
słoika Bundler nie istnieje na nowszych wersjach OS X. Jako obejście, można ręcznie utworzyć projekt OS X, który wywołuje Java. Lub istnieje wiele rozszerzeń systemu budowy, które robią coś podobnego; na przykład wtyczka gradle-macappbundle dla Gradle utworzy taką aplikację otoki.

+1

The Jar Bundler nie jest częścią narzędzi Xcode Develoer od Lion 10.8.2 (http://stackoverflow.com/questions/15375490/why-is-jar-bundler-gone-in-mac-os-x- góra-lew-10-8-2) – gardenofwine

+0

Czy istnieje sposób na zrobienie okna instalatora exe? To znaczy. czy istnieje okno analogowe wtyczki macAppBundle dla gradle? – hepcat72

5

Jeśli nie masz komputera Mac do zbudowania tego (lub chcesz zintegrować go z istniejącym łańcuchem budowania), możesz rzucić okiem na OS X Application Bundle Plugin for Maven.

To będzie (jeśli działa w systemie Linux lub Windows) utworzyć plik ZIP, który zostanie rozpakowany jako odpowiednia aplikacja dla systemu Mac. Jeśli uruchomisz Mavena na komputerze Mac, może on również utworzyć DMG.

2

Można również pakiet aplikacji z zadania JarBundler Ant:

http://informagen.com/JarBundler

<jarbundler dir="release" 
     name="MyApp" 
     mainclass="org.foo.myapp.Main" 
     jar="myapp.jar" /> 
5

JarBundler jest przestarzały, ale jest (lepsza) oficjalna wymiana: narzędzie javapackager.

Dla OSX, prosty, dobrze objaśniony, krok po kroku samouczek dotyczący tworzenia DMG z java znajduje się tutaj: http://centerkey.com/mac/java/. W przypadku innych platform wystarczy zmodyfikować przykład za pomocą odpowiednich przełączników w javapackager.

1

Użytkownik Github Jorl17 wykonał znakomity skrypt w języku Python o nazwie jar2app, który wykonuje to za pomocą jednego prostego polecenia. Pozwala nawet dostosować ikonę aplikacji.

https://github.com/Jorl17/jar2app

Wystarczy zainstalować go, postępuj zgodnie z instrukcjami, a otrzymasz plik .app.

Powiązane problemy