请注意,这与this question不同,因为它不处理链接,因为它不会询问如何通过CLI链接它,而是在Eclipse中使用GUI。
我一直在尝试使用LWJGL编写一个简单的程序。当我将库添加到Eclipse(Windows 7 64bit上的Kepler 4.3.1)并编写程序时,它不会在使用LWJGL的东西下显示红色波浪形。但是,尝试运行它会给我以下堆栈跟踪:
Exception in thread "main" 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.opengl.Display.<clinit>(Display.java:135)
at DisplayExample.start(DisplayExample.java:8)
at DisplayExample.main(DisplayExample.java:23)
(是的,这是他们首先提供的示例,但我想运行它以确保所有内容都已正确安装)
我的问题是,如何解决此错误?请注意,即使在Eclipse中运行,它仍然会失败。如果我运行其他不使用LWJGL的东西,它也可以。我刚从互联网上下载它 - 它只有一个版本,所以我认为它是正确的。从我所看到的,其他问题都不会出现与我相同的错误 - 但如果你能指出我也会提供有用的信息问题。
答案 0 :(得分:38)
您没有在LWJGL应用程序中设置本机。
以下是如何操作:
希望这有助于:)
答案 1 :(得分:4)
我正在关注教程here,看起来我没有做添加原生步骤,或者我做错了。
按照该链接中的说明解决问题:
通过单击lwjgl.jar文件旁边的小箭头来显示下拉列表。双击&#39;原生图书馆位置&#39;并选择包含操作系统本机文件的文件夹,然后单击“确定”。它们位于LWJGL下载包中的natives文件夹中(例如,在Windows上,你指向包含* .dll文件的natives \ windows文件夹,在Mac上你指向natives / macosx文件夹和Linux上你指向natives / linux文件夹。
答案 2 :(得分:0)
如果您尝试运行,请运行以下代码:
public static void main(String... args){
System.out.println(System.getProperty("java.library.path"));
}
您应该获得如下输出: /Users/yourName/.sdkman/candidates/java/8.0.252.j9-adpt/jre/lib/compressedrefs:/Users/yourName/.sdkman/candidates/java/8.0.252.j9-adpt/jre/lib: / usr / lib
因此,您只需要下载LWJGL库并将位于“ ... native / yourOSname”的文件复制到此文件夹之一
对我来说很好!