Convertire .jar in un eseguibile OSX?

Ho creato un’applicazione Java che vorrei distribuire su Windows, OSX e Linux senza distribuire un file jar. Ho usato l’ottimo wrapper exe di Windows http://launch4j.sourceforge.net/ per creare un file .exe completo della mia icona che non spaventerà gli utenti di Windows.

Ci sono wrapper simili che posso usare per OSX / Unix? Una considerazione importante è che mi piacerebbe avere la mia icona sul file eseguibile (soprattutto per gli utenti Mac).

Grazie!

Sì, su Mac OS X c’è un programma chiamato Jar Bundler che viene installato quando installi il software gratuito (supponendo che possiedi già una copia di Mac OS X) Xcode Developer Tools che ti permetta di raggruppare un file JAR all’interno di un Mac OS nativo X “* .app” bundle di applicazioni con un’icona bella e lucida come le altre app.

Aggiornare
Il bundler JAR non esiste nelle versioni successive di OS X. Come soluzione temporanea, puoi creare manualmente un progetto OS X che richiama Java. Oppure, ci sono una varietà di estensioni del sistema di build che fanno una cosa simile; ad esempio, il plugin gradle-macappbundle per Gradle creerà una tale app wrapper.

JarBundler è obsoleto, ma esiste una (migliore) sostituzione ufficiale: lo strumento javapackager .

Per OSX, un semplice tutorial, ben spiegato, passo dopo passo su come creare un DMG da java è qui: http://centerkey.com/mac/java/ . Per le altre piattaforms, è sufficiente modificare l’esempio utilizzando gli switch appropriati in javapackager.

Se non hai un Mac su cui crearlo (o vuoi integrarlo in una catena di build esistente), potresti dare un’occhiata al plugin del pacchetto di applicazioni OS X per Maven .

Questo (se eseguito su Linux o Windows) creerà un file zip che decomprimerà come applicazione Mac appropriata. Se esegui Maven su un Mac, puoi anche creare un DMG.

Puoi anche pacchettizzare la tua applicazione con l’attività Ant JarBundler:

http://informagen.com/JarBundler

 

L’utente di Github Jorl17 ha creato un eccellente script Python chiamato jar2app che esegue questo con un semplice comando. Ti consente persino di personalizzare l’icona dell’app.

https://github.com/Jorl17/jar2app

Basta installarlo, seguire le istruzioni e si ottiene il file .app.