Java Eclipse可以';t加载liblwjgl64.so
我知道这个问题以前已经得到了回答,但没有一个有效。我试着运行一个简单的程序Java Eclipse可以';t加载liblwjgl64.so,java,eclipse,lwjgl,Java,Eclipse,Lwjgl,我知道这个问题以前已经得到了回答,但没有一个有效。我试着运行一个简单的程序 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
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);
}
}
但无论是否添加本机文件,它总是抛出相同的错误
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)
线程“main”java.lang.UnsatisfiedLinkError中出现异常:java.library.path中没有lwjgl
位于java.lang.ClassLoader.loadLibrary(ClassLoader.java:1867)
位于java.lang.Runtime.loadLibrary0(Runtime.java:870)
位于java.lang.System.loadLibrary(System.java:1122)
位于org.lwjgl.Sys$1.run(Sys.java:73)
位于java.security.AccessController.doPrivileged(本机方法)
位于org.lwjgl.Sys.doLoadLibrary(Sys.java:66)
位于org.lwjgl.Sys.loadLibrary(Sys.java:95)
位于org.lwjgl.Sys(Sys.java:112)
在org.lwjgl.opengl.Display上(Display.java:135)
在tools.crystalcoffee.methods.DisplayMethod.createDisplay(DisplayMethod.java:11)
在tools.crystalcoffee.methods.DisplayMethod.main(DisplayMethod.java:38)
我到处寻找答案,连续两个小时都是这样。帮助?检查您的属性以了解
lwjgl
。我尝试了你的程序,首先我得到了相同的错误(不满意的链接)。然后,如果我确保所有库都是lwjgl 2.9.3(从legacy.lwjgl中获取),那么它就会工作,并且显示开始渲染
我们的例外似乎是因为我们有lwjgl 3和2的混合版本
另见
而且我在别的地方找到了这个,它让我觉得一切都很好:
System.setProperty("org.lwjgl.librarypath", new File("/home/cole/Documents/lwjgl-2.9/lwjgl-2.9.0/native/linux").getAbsolutePath());
您是否正在尝试从32位Elipse/JVM加载64位库?请记住,该文件必须命名为
liblwjgl.so
,而不是liblwjgl64.so
@Andreas。它被称为liblwjgl.so,它没有改变什么,它仍然说同样的事情。本机文件是否链接到项目属性>构建路径>库中的LWJGL库?@headcrafter该程序为我工作。您是否尝试链接LWJGL2.9库?如果混合使用v2和v3库,或者不包括本地人,则可能会出现此错误。请尝试阅读我的答案和评论,如果它不适合你。我让它在eclipse中为我工作,窗口打开了。实际上相当不错。