Impossibile eseguire il file JAR

2

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.

    
posta Nate Lockwood 07.05.2018 - 23:20
fonte

1 risposta

1

Nel mio caso, ho avuto un'app Netbeans che ho sviluppato in Snow Leopard e non ho potuto aprire facendo doppio clic su High Sierra.

Invece di copiare solo l'applicazione .jar, ho copiato la directory dist che conteneva l'applicazione .jar più la directory della libreria che contiene altri 6 file .jar aggiunti quando ho originariamente compilato la versione di distribuzione.

Il doppio clic sull'applicazione .jar non funzionava ancora, ma ero in grado di avviare "my_app.jar" dal terminale inserendo cd nella directory dist e usando

java -jar my_app.jar

(NB: ho installato JDK più recente.)

    
risposta data 12.05.2018 - 14:56
fonte

Leggi altre domande sui tag