2009-02-26 21 views
15

sto distribuendo un programma Java dove voglio un file doppio cliccabile per eseguireEquivalente di double-clickable .sh e .bat su Mac?

java -cp MyProgram.jar;MyLib.jar my.program.Main 

In Windows ho semplicemente distribuire un file .bat, per * nix un file .sh eseguibile. Il problema è che, facendo doppio clic sul file .sh, è sufficiente aprirlo in un editor di testo su Mac. Cosa dovrei fare per Mac?

risposta

31

Su Mac, c'è un'estensione specifica per l'esecuzione di script di shell facendo doppio clic su di essi: questo è .command.

+0

funziona come un fascino! – Epaga

+5

Questa è una domanda piuttosto vecchia, ma per quelli che ottengono il ' comando non può essere eseguito perché non si dispone dei privilegi di accesso appropriati. Errore, come ero, eseguire quanto segue su Terminale:' chmod u + x/percorso/to/file.command' e che dovrebbe sbarazzarsi di questo problema. – asherbar

+0

@ user2016436 Non voglio aggiungere 'chmod u + x' per eseguire il file, poiché il file eseguibile verrà eseguito sul client. cosa dovrei fare? –

2

È possibile utilizzare uno .sh (Shell Script), dopo tutto MacOSX è Unix!

4

Per le applicazioni Java su Mac, è necessario utilizzare il Jar Bundler di Apple (nella cartella Strumenti di sviluppo/Applicazioni/Utility, in realtà un collegamento simbolico a/usr/share/java/Tools/Jar Bundler). Ti consente di creare un'app corretta per OS X, inclusa l'impostazione delle preferenze per es. utilizzando la barra degli strumenti Mac, la versione JVM, il sistema grafico, i metadati dell'app OS X e il percorso/risorse di classe.

1

La risposta sull'utilizzo dello strumento Jar Bundler è corretta, ma se si desidera utilizzare un file .sh, assicurarsi che le autorizzazioni unix siano impostate correttamente su qualcosa come 755 con CHMOD e assicurarsi che la prima riga contenga il percorso a una shell installata di default su Mac OS X. Si noti inoltre che anche con il set + x bit, potrebbe comunque chiedere all'utente se vuole aprirlo o eseguirlo.