我在eclipse中制作了一个Java游戏,当我运行可执行文件.jar时,它会启动,加载屏幕也会启动,但随后它会停止并挂起。我使用命令行"Java -jar filename.jar“运行它,当加载屏幕停止时,它会显示一个错误。以下是cmd显示的内容:
E:\>Java -jar Speedrunner.jar
60Ticks, FPS:1447
60Ticks, FPS:1627
60Ticks, FPS:1380
Wed Mar 19 12:02:27 GMT 2014 INFO:Initialising sounds..
Exception in thread "Thread-2" java.lang.UnsatisfiedLinkError: no lwjgl in java.
library.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: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.Sound.<init>(Sound.java:83)
at com.daves.first_Scroller.utils.AudioPlayer.addSound(AudioPlayer.java:29)
at com.daves.first_Scroller.utils.ResourceLoader.loadSounds(ResourceLoader.java:35)
at com.daves.first_Scroller.Game.load(Game.java:110)
at com.daves.first_Scroller.Game.tick(Game.java:160)
at com.daves.first_Scroller.Game.run(Game.java:228)
at java.lang.Thread.run(Unknown Source)
这就是说LWJGL不在java.library.path中,我已经在工作区中访问了我的游戏,并将构建路径配置为包含所有的库,并在导出游戏时将它们包含在.jar中,但我仍然遇到同样的问题。有人知道我需要做些什么才能让它工作吗?(我查看了.jar,LWJGL在org文件中)
发布于 2014-03-19 12:12:15
在jar中导出lwjgl库。
为此,右键单击项目、属性、java构建路径、order & export,检查您的库
发布于 2014-03-19 12:24:09
在命令行中设置(本机)库路径:
Java -Djava.library.path=path/to/dir -jar filename.jar
Where dir
...应包含本机部分( windows上的*.dll文件,linux上的*.so,mac上的*.jnilib等)
(Source)
https://stackoverflow.com/questions/22505410
复制