我知道以前已经回答过这个问题,但没有一个有效。我尝试运行一个简单的程序,
enter code here
package tools.crystalcoffee.methods;
import org.lwjgl.LWJGLException;
import org.lwjgl.opengl.Display;
import org.lwjgl.opengl.DisplayMode;
public class DisplayMethod {
public void createDisplay(int width, int height) {
try {
//Here we set the size of the Display then create it
Display.setDisplayMode(new DisplayMode(width,height));
Display.create();
} catch (LWJGLException e) {
e.printStackTrace();
}
// init OpenGL here
while (!Display.isCloseRequested()) {
// render OpenGL here
Display.update();
}
Display.destroy();
}
public static void main(String[] argv) {
//Make a debug thing
Debug debug = new Debug();
debug.debug("Works");
//Making an instance?
DisplayMethod displayExample = new DisplayMethod();
//Starting
displayExample.createDisplay(100,100);
}
}
但无论我是否添加 native 文件,它总是会抛出相同的错误。
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.opengl.Display.<clinit>(Display.java:135)
at tools.crystalcoffee.methods.DisplayMethod.createDisplay(DisplayMethod.java:11)
at tools.crystalcoffee.methods.DisplayMethod.main(DisplayMethod.java:38)
我已经到处寻找答案,连续两个小时,这就是它抛出的全部内容。帮忙?
最佳答案
检查您的 lwjgl
属性。我尝试了你的程序,首先我得到了同样的错误(不满意的链接)。然后,如果我确保所有库都是lwjgl 2.9.3(从legacy.lwjgl获取它),那么它就可以工作并且显示开始渲染。
我们遇到的异常(exception)似乎是因为我们有 lwjgl 3 和 2 的混合版本。
另请参阅LWJGL Display class can't be found
和Getting 'java.lang.UnsatisfiedLinkError': no lwjgl in java.library.path
关于java - Eclipse 无法加载 liblwjgl64.so,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37494166/