Primo: mi rendo conto che questo problema dovrebbe essere abbastanza semplice e molte persone sembrano averlo sperimentato. Tuttavia, il mio problema potrebbe essere leggermente diverso da diverso dai post esistenti."Impossibile trovare la classe principale" quando si fa doppio clic sul file .jar
Sto utilizzando NetBeans per compilare un'applicazione Java. Quando ha finito di costruire, l'output va nella cartella dist \ correttamente. Il file jar è presente lì. Se vado alla riga di comando, passare a quella cartella, e chiamare il seguente:
java-jar Prosperity.jar
tutto funziona bene. Ovviamente il nome dell'applicazione è Prosperity. Il seguente comando funziona anche bene:
javaw-jar Prosperity.jar
Tuttavia, fare doppio clic sul file .jar dà il messaggio: "Impossibile trovare la classe principale:", e poi dà il percorso il file .jar. Ho controllato centinaia di volte che la cartella META-INF esiste all'interno del file .jar e che al suo interno esiste un MANIFEST.MF con il nome corretto della classe principale. Ho anche verificato che il file di classe principale (App.class) .class esista all'interno del file .jar.
Quindi la domanda è: qual è la differenza tra fare doppio clic su un file ed eseguire javaw su di esso? Sta diventando davvero frustrante che non funzionerà!
Grazie per qualsiasi direzione tu possa darmi, sto strappando i miei capelli qui!
Sembra che in qualche modo Java ha l'idea che la mia classe principale sia effettivamente chiamata PATH per il file jar che sto usando. Non ho idea di come andrà a finire. Sembra ignorare il valore all'interno del manifest e cercare una classe principale con il nome: C: \ Users \ MyUser \ MyApp \ Prosperity.jar. Presumo che se riuscissi a capire come sta diventando il nome della classe principale che sta cercando, allora potrei risolvere il problema. – aardvarkk