3

我正在尝试使用lwjgl库,并且我正在从头开始安装新的 Windows 7。

我从 Oracle 网站下载了最新的 JDK 6。安装后,我发现 Windows cmd 提示符无法识别像“java”或“javac”这样的命令。所以,我编辑了我的路径变量并将 jdk 的 bin 文件夹附加到它上面。

现在java命令工作了。

所以,我下载了最新的 lwjgl,解压并阅读他们网站上的安装说明:

下载发行版解压档案,文件内容(在子文件夹中)应包括(除其他外):

lwjgl.dll lwjglaudio.dll lwjgl.jar lwjgl_util.jar
lwjgl_test.jar 通过打开命令提示符并导航到解压缩存档的文件夹来测试 LWJGL。导航后,发出以下命令:(全部在一行中,每个 - 选项前有空格)

java -cp .;res;jar\lwjgl.jar;jar\lwjgl_test.jar;jar\lwjgl_util.jar;jar\lwjgl_fmod3.jar;jar\lwjgl_devil.jar;jar\jinput.jar;-Djava.library.path=本机\windows org.lwjgl.test.WindowCreationTest

应该会出现一个窗口,您应该会看到以下输出:

找到显示模式 240、320、WindowCreationTest 已创建显示 移动到 100、100 已创建窗口 600、800、游戏

因此,我提取了它并在 cmd 提示符下导航到提取的文件夹。

然后我执行了上面指定的测试命令,我收到以下错误:

C:\Users\Nestor\Downloads\lwjgl-2.6\lwjgl-2.6>java -cp .;res;jar\lwjgl.jar;jar\ lwjgl_test.jar;jar\lwjgl_util.jar;jar\lwjgl_fmod3.jar;jar\ lwjgl_devil.jar;jar\ji nput.jar;-Djava.library.path=native\windows org.lwjgl.test.WindowCreationTest
以下键可用: ESCAPE:退出测试 箭头键:在非全屏模式下移动窗口 L :
列出可选择
的显示模式 0-8: 显示模式的选择 F:
切换全屏 SHIFT-F:
使用 Display.destroy()/create() 循环切换全屏 线程“main”中的异常 java.lang.UnsatisfiedLinkError: no lwjgl in java .library.path 在 java.lang.ClassLoader.loadLibrary(ClassLoader.java:1734) 在 java.lang.Runtime.loadLibrary0(Runtime.java:823) 在 java.lang.System.loadLibrary(System.java:1028) 在 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) org.lwjgl.Sys.(Sys.java:99) org.lwjgl.opengl.Display.(Display.java:130) org.lwjgl.test.WindowCreationTest.initialize(WindowCreationTest.java:82)在 org.lwjgl.test.WindowCreationTest.main(WindowCreationTest.java:286)

C:\Users\Nestor\Downloads\lwjgl-2.6\lwjgl-2.6>

为什么我会收到这个错误?我不明白为什么应该存在链接错误。在我试图执行它的命令中,清楚地说明了它需要的那些本机 dll 的路径:

C:\Users\Nestor\Downloads\lwjgl-2.6\lwjgl-2.6>java -cp .;res;jar\lwjgl.jar;jar\ lwjgl_test.jar;jar\lwjgl_util.jar;jar\lwjgl_fmod3.jar;jar\ lwjgl_devil.jar;jar\ji nput.jar; -Djava.library.path=native\windows org.lwjgl.test.WindowCreationTest

我已经确认相对路径“native\windows”包含这些依赖项:

C:\Users\Nestor\Downloads\lwjgl-2.6\lwjgl-2.6\native\windows>dir
驱动器 C 中的卷没有标签。
卷序列号为 2061-75F6

C:\Users\Nestor\Downloads\lwjgl-2.6\lwjgl-2.6\native\windows 目录

2010 年 11 月 24 日上午 12 点 35 分。
2010 年 11 月 24日上午 12:35 ..
2010 年 10 月 18 日下午 8:44 31,232 jinput-dx8.dll 2010 年 10 月18 日下午 8:44 65,024 jinput-dx8_64.dll 2010 年 10 月 18 日 下午
8:44
29,696 jinput-raw.dll
10/18/2010 08:44 PM 62,464 jinput-raw_64.dll
10/18/2010 08:44 PM 197,120 lwjgl.dll
10/18/2010 08:44 PM 305,664 lwjgl64.dll
10/18 /2010 08:44 PM 56,832 OpenAL32.dll
10/18/2010 08:44 PM 157,184 OpenAL64.dll
8 文件 905,216 字节
2 目录 155,163,058,176 字节空闲

谁能帮忙指出我做错了什么?任何人都可以通过下载 LWJGL 库并尝试运行安装说明中给出的测试命令来重现这一点吗?

4

3 回答 3

5

您的类路径参数 ( ) 和系统属性设置 ( ) 之间似乎没有空格-cp jar1.jar;jar2.jar-D..

例如,您的类路径看起来像这样-cp .;res;jar\lwjgl.jar;jar\lwjgl_test.jar;jar\lwr...;-Djava.library.path=native\windows。这样,java 将像类路径一样解释本机库路径参数的属性设置!

只需在这些参数之间添加一个空格,您就应该启动并运行,这是更正后的命令(也在 Windows 7 上测试过):

java -cp jar\lwjgl.jar;jar\lwjgl_test.jar;jar\lwjgl_util.jar -Djava.library.path=native\windows org.lwjgl.test.WindowCreationTest

请注意,我从类路径中删除了未使用的 jar,因为您只想运行该WindowCreationTest示例。

于 2010-11-30T10:41:59.537 回答
0

再次检查该目录

C:\Users\Nestor\Downloads\lwjgl-2.6\lwjgl-2.6\native\windows

存在并包含lwjgl.dlllwjglaudio.dll

我认为您的安装有问题,即目录不存在或文件不存在。

于 2010-11-25T10:03:51.917 回答
0

只是把它扔在那里,因为我有一些与此相关的问题。转到您的 Java/JRE/BIN 文件夹。右键单击Java,然后转到属性。在特权级别下,以管理员身份运行选中该框。

于 2010-11-29T22:16:09.640 回答