【问题标题】:Java LWJGL (linux): Could not initialize class org.lwjgl.system.MemoryAccessJava LWJGL (linux):无法初始化类 org.lwjgl.system.MemoryAccess
【发布时间】:2016-11-14 16:24:05
【问题描述】:

我刚刚将 lwjgl 3.1 添加到 Intellij IDEA 的一个项目中。为了验证一切是否正确,我尝试在网页(https://www.lwjgl.org/guide)中运行指南代码,但编译时出现以下错误:

“线程“main”中的异常 java.lang.NoClassDefFoundError: 不能 初始化类 org.lwjgl.system.MemoryAccess"

通过google搜索发现可能的错误是在原生库的配置中,是我在项目中配置库的时候添加的。

当从网页下载 LWJGL 时,我得到了一个 zip 文件,其中包含模块的所有 jar 文件(类、文档、本机和源代码),我所做的是将它们相应地分开,然后将它们添加为单个库在 IDE 的全局库部分。 Global Libraries

在此之后,该库将显示为项目的一个模块。

仍然,程序无法编译。还有什么我应该配置的吗?

【问题讨论】:

    标签: java intellij-idea lwjgl


    【解决方案1】:

    您声称这是一个编译时错误,但是,在查看文档后,我发现这是一个运行时错误,您成功编译,但 JVM 在运行时无法找到该类。为了解决这个问题,我建议使用 jarsplice 合并你的 .jar 输出和 lwjgl jar,看看是否可以解决它。如果它修复它,问题是 intelliJ 没有正确地将你的库添加到你的 jar 中。

    【讨论】:

    • 是的,这是一个运行时错误,而不是编译错误。我需要提取本机库,因为它们打包在 jar 文件中。之后,一切都完美无缺。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-06-23
    • 2021-09-10
    • 1970-01-01
    • 1970-01-01
    • 2021-11-03
    • 2012-08-01
    • 2012-10-10
    相关资源
    最近更新 更多