Sto realizzando un gioco di base in Java utilizzando la libreria LWJGL tramite Netbeans.Quando eseguo il .jar, ottengo un errore "No lwjgl in java.library.path"
Ho creato una libreria con lwjgl, lwjgl_util e jinput .jar e ho aggiunto -Djava.library.path = C: \ LWJGL \ native \ windows alla categoria "Esegui" nelle proprietà del progetto.
Quando eseguo il file in Netbeans, funziona perfettamente senza problemi. Ma quando eseguo il .jar facendo doppio clic sul file, non compare nulla (nemmeno la finestra di errore CMD momentanea, per quanto posso dire). E quando ho eseguito il file tramite linea di comando, ottengo:
C:\Users\200160765>java -jar "C:\Users\200160765\Documents\NetBeansProjects\Game
\dist\Game.jar"
Exception in thread "main" java.lang.UnsatisfiedLinkError: no lwjgl in java.libr
ary.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at org.lwjgl.Sys$1.run(Sys.java:73)
at java.security.AccessController.doPrivileged(Native Method)
at org.lwjgl.Sys.doLoadLibrary(Sys.java:66)
at org.lwjgl.Sys.loadLibrary(Sys.java:82)
at org.lwjgl.Sys.<clinit>(Sys.java:99)
at org.lwjgl.opengl.Display.<clinit>(Display.java:130)
at game.Draw.createWindow(Draw.java:198)
at game.Draw.init(Draw.java:214)
at game.Draw.run(Draw.java:56)
at game.Main.main(Main.java:9)
Ho provato a spostare il file di libreria .jar intorno alla cartella 'lib' nella stessa directory come Game.jar di DLL e, e in movimento li nella stessa directory di Game.jar, ma ottengo lo stesso errore. Qualcuno potrebbe aiutarmi a capire perché non riesco a farlo funzionare al di fuori di netbeans?
Non ho molta familiarità con la sintassi del file .bat, ma ho provato questa strada: '@echo off java -jar Game.jar -Djava.library.path = C: \ LWJGL \ native \ windows' E ho ancora il stesso errore. –
Inoltre, la cosa di Fat Jar funziona, ma le trame sui blocchi che sto attualmente rendering non vengono caricate ... tuttavia, questo potrebbe essere il risultato dell'imballaggio in un .jar e non dell'imballaggio in un vaso di grasso. –
yeh assicurati di non caricare trame usando un File o FileInputStream poiché non è possibile utilizzarle per caricare trame all'interno di un barattolo. – Gavin