你们在投票之前! 我收到此错误+>
Exception in thread "main" java.lang.UnsatisfiedLinkError: no lwjgl in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1867)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
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:95)
at org.lwjgl.Sys.<clinit>(Sys.java:112)
at org.lwjgl.openal.AL.<clinit>(AL.java:59)
at org.newdawn.slick.openal.SoundStore$1.run(SoundStore.java:295)
at java.security.AccessController.doPrivileged(Native Method)
at org.newdawn.slick.openal.SoundStore.init(SoundStore.java:292)
at org.newdawn.slick.Music.<init>(Music.java:128)
at org.newdawn.slick.Music.<init>(Music.java:74)
at com.meteor.breaker.AudioPlayer.load(AudioPlayer.java:21)
at com.meteor.breaker.Game.<init>(Game.java:35)
at com.meteor.breaker.Game.main(Game.java:55)
C:\Users\Hardi\AppData\Local\NetBeans\Cache\8.2\executor-snippets\run.xml:53: Java returned: 1
BUILD FAILED (total time: 0 seconds)
我已经搜索了一天,却找不到任何可行的解决方案。
我正在使用lwjgl,它的本机库在路径中
“ F:\ Khushit Java \ Meteor Breaker \ lib \ windows”
在Windows文件夹中,存在lwjgl.dll。
我转到VM选项:- 就是写
-Djava.library.path="F:\Khushit Java\Meteor Breaker\lib\windows"
这适用于在ide上运行。 但是当我运行罐子时它不起作用。
所以,我想出了一个解决方案: 加载库运行时:-
System.setProperty("java.library.path",<path>);
static{
File l = new File("lib/windows");
System.setProperty("java.library.path",l.getAbsolutePath());
System.out.println("static:" + System.getProperty("java.library.path"));
}
真正的问题来了
如果我使用vm(第一种方法)选项打印System.getProperty("java.library.path")
,则会得到路径:
F:\ Khushit Java \ Meteor Breaker \ lib \ windows
,如果我通过运行时链接(第二种方法)打印System.getProperty("java.library.path")
,我也会得到相同的路径:
F:\ Khushit Java \ Meteor Breaker \ lib \ windows
这只是意味着java.library.path可以,那么我也遇到了错误
请引导我。