Ho scritto una piccola applicazione desktop Java usando NetBeans, Java 8 e JavaFX 8 sul mio MacBook con MacOS High Sierra. Posso avviarlo da Terminal eseguendo uno script Bash (menzionato sotto), ma facendo doppio clic sul JAR in Finder non riesce (facendo clic con il pulsante destro del mouse e selezionando Apri si verifica un errore) e ricevo un suggerimento che cerco errori in Console.app, ma non hanno altri indizi su cosa non funziona. È un'app molto specializzata che probabilmente distribuirò solo a un paio di colleghi che non lavorano in Terminal.
La ricerca di Google mi ha fornito soluzioni non aggiornate, la soluzione Oracle (non aggiornata) ha fornito un collegamento che si è dimostrato inutile.
Che cosa devo fare per poter rendere eseguibile il file JAR dal Finder? Come posso ottenere maggiori informazioni su cosa c'è che non va? Dal momento che non è firmato, potrebbe essere che Gatekeeper sia il colpevole.
Il mio script è in ~/bin
che è incluso in PATH. Ho una cartella, ~/jars
per le app Java, ognuna delle quali ha una sua cartella. In quella cartella ho copiato il mio progetto- > ... dist app.jar e la mia cartella libs con librerie jar esterne. Lo script ha permessi di esecuzione. Ecco lo script:
#!/bin/bash
java -jar $HOME/jars/myApp/myApp.
Posso avviare l'app da Terminale o da Finder ma il primo cercatore di tempo penserà che voglio modificarlo, quindi devo scegliere Altro e quindi scegliere Terminale . BTW funziona esattamente allo stesso modo in Ubuntu, ho appena copiato lo script, l'ho rilasciato in ~/bin
e ho abbandonato la cartella myApp
in ~/jars
. Funzionava principalmente, ma il JRE sulla macchina Ubuntu, mentre Java 8, è una versione un po 'più vecchia di quella sul mio Mac e ricevo un errore di runtime dopo un po'. Penso che l'aggiornamento alla stessa versione risolverà il problema in quanto non so come forzare NetBeans a includere JRE.