更改Eclipse工作区后出现UnsatisfiedLinkError

d7v8vwbk  于 2023-10-18  发布在  Eclipse
关注(0)|答案(2)|浏览(139)

我一直在使用lwjgl和Slick 2D库在我的工作。在某些时候,我需要将我的Minecraft Bukkit插件与其他Java程序分开,所以我将Java程序转移到另一个工作区。然而,在这样做之后,我的项目与前面提到的库无法工作,给出错误:
线程“main”java.lang.UnsatisfiedLinkError:java.library.path中没有lwjgl
堆栈跟踪指向我在main()块中初始化AppGameContainer的位置:

AppGameContainer appgc;
    try{
        appgc = new AppGameContainer(new Game(gamename)); // <-- This line
        appgc.setDisplayMode(800, 600, false);
        appgc.setTargetFrameRate(FPS);
        appgc.start();
    }catch(SlickException ex){
        ex.printStackTrace();
    }

在工作区迁移之前,这个程序编译和运行得非常好,除了工作区位置之外,没有任何变化。我已经删除并重新添加了库jar(通过Add JAR,而不是Add External JAR,jar文件在/lib/jars/中,就像以前一样,相对于项目)。我甚至试图重新添加它们作为外部jar,但仍然没有运气。编译器在尝试运行程序之前没有报告任何错误。

qjp7pelc

qjp7pelc1#

您是否检查了项目选项的部署程序集类别(假设您使用的项目类型具有该类别)?有可能您更新了编译时引用,但没有更新运行时引用。

mm9b1k5b

mm9b1k5b2#

当你移动java程序时,你可能没有移动那些告诉你的开发程序本地程序在哪里的文件。

appgc = new AppGameContainer(new Game(gamename)); //<-- This line

UnsatisfiedLinkError最有可能是因为LWJGL/Slick没有初始化AppGameContainer所需的本机而抛出的。试着联系当地人。
Linking natives in Eclipse
Linking natives in Netbeans

相关问题