UnsatisfiedLinkError Libgdx桌面

发布于 2021-01-29 20:40:20

我在桌面上遇到LibGDX的问题。尝试启动应用程序时,我始终收到以下错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: com.badlogic.gdx.utils.BufferUtils.newDisposableByteBuffer(I)Ljava/nio/ByteBuffer;
at com.badlogic.gdx.utils.BufferUtils.newDisposableByteBuffer(Native Method)
at com.badlogic.gdx.utils.BufferUtils.newUnsafeByteBuffer(BufferUtils.java:288)
at com.badlogic.gdx.graphics.glutils.VertexArray.<init>(VertexArray.java:62)
at com.badlogic.gdx.graphics.glutils.VertexArray.<init>(VertexArray.java:53)
at com.badlogic.gdx.graphics.Mesh.<init>(Mesh.java:148)
at com.badlogic.gdx.graphics.g2d.SpriteBatch.<init>(SpriteBatch.java:173)
at com.badlogic.gdx.graphics.g2d.SpriteBatch.<init>(SpriteBatch.java:142)
at com.badlogic.gdx.graphics.g2d.SpriteBatch.<init>(SpriteBatch.java:121)
at com.badlogic.gdx.graphics.g2d.SpriteBatch.<init>(SpriteBatch.java:115)

我将以下库添加到我的项目中:

  • gdx.jar
  • gdx-sources.jar
  • gdx-natives.jar
  • gdx-backend-lwjgl.jar
  • gdx-backend-lwjgl-natives.jar

我想念什么吗?

我已经搜索了很多东西,但是我发现的一切都是针对Android的,它告诉我将arm文件夹中的.so库添加到我的项目中,但是对于Wintel平台上的桌面项目而言,这对我来说没有任何意义。

关注者
0
被浏览
60
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    我建议您使用此GUI设置项目。它应为您提供适用于所有平台的有效设置。您也可以使用最新的每晚版本,并检查问题是否仍然存在。问题可能在于本地库与其他jar不匹配。

    另一个问题可能是您太早实例化了SpriteBatch(或其他内部使用SpriteBatch的实例)(在stacktrace中看起来像这样)。例如静态地像这样:

    private static SpriteBatch batch = new SpriteBatch();
    

    这是行不通的,因为此时libgdx设置不正确。而是在游戏的create/ show方法中创建此类内容。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看