当前位置: 首页 > 知识库问答 >
问题:

IntelliJ Maven项目具有未满足的链接错误:未能定位库:lwjgl。dll

包兴思
2023-03-14

我已将现有的多模块Maven项目导入IntelliJ。父项目本身构建并运行良好,但我正在尝试自行运行其中一个模块(弹出查看器窗口)。当我这样做时,我收到以下错误:

[LWJGL]加载库失败。可能的解决方案:
a)将包含共享库的目录添加到-Djava.library.path或-Dorg.lwjgl.librarypath.
b)将包含共享库的JAR添加到类路径。
[LWJGL]使用-D启用调试模式org.lwjgl.util.Debug=true以获得更好的诊断。
[LWJGL]使用-D启用SharedLibraryLoader调试模式org.lwjgl.util.DebugLoader=true以获得更好的诊断。
线程“main”中的异常java.lang.未满足链接错误:无法找到库:lwjgl.dll

我不确定如何解决这个问题,我对整个项目如何构建和运行感到困惑,但是模块运行有问题。lwjgl包含在pom.xml中,所以Maven不应该处理这个依赖关系吗?

共有2个答案

山阳辉
2023-03-14

从该链接:

http://forum.lwjgl.org/index.php?topic=6428.0

"lwjgl-*-natives-*jar文件应该添加为"类",而不是"本机库位置"。它们必须在类路径中,以便LWJGL自动发现、提取和加载它们。我认为IntelliJ中的"本机库位置"只有指向文件夹位置时才有效,并且带有预先提取的本机库。它可能会将这些文件夹作为路径传递到-Djava.library.path.LWJGL也支持这一点,但这意味着您必须自己从jar中提取本机库。"

看来你必须自己提取它们...

我对maven不太熟悉,但在通过Intellij对其进行配置后,我会考虑对其进行配置,使其自动位于类路径上。

夏侯腾
2023-03-14

所以我的问题是我在一台Windows电脑上,但我收到的项目有它的pom。xml配置为仅下载lwjgl本机macos JAR。我通过编辑主pom修复了这个问题。xml包括mac和windows的两个单独的配置文件,并在lwjgl依存关系的分类器中使用它们。

在我解决这个问题之前,我找到了一个解决方法,从https://www.lwjgl.org/download,提取jar文件,并将其作为库存储在文件下的IntelliJ中

 类似资料:
  • 为什么我会得到不满意的链接错误? 细节如下: 本机方法的原型及其在我的Java代码中的调用是这样的: 私有本机long sampleFunction(long[][]twoDimArray,long number); p.SampleFunction(twoDimArray,number); 本机方法在VC++代码中的原型是这样的: JNIEXPORT jlong JNICALL Java_MyC

  • 我有一个JNI dll以及我在带有eclipse的机器上创建的jar文件。 我正在尝试将其部署到另一台机器,但无法通过异常 我有另一个打印java.library.path的程序,我已经验证了这个dll所依赖的dll以及这个dll在java.library.path. 我已经阅读了他们应该在当前目录中的帖子,但这不起作用。 我读过他们应该去jre/bin的帖子,得到了同样的结果。 任何帮助都将不胜

  • 我是一名学生,正在为我的学校项目开发OCR功能。到目前为止,我能够成功地实现这些功能并运行应用程序。 我在Android Studio1.5.1上有我的应用程序,并且能够在我的旧设备三星银河笔记3应用编程接口21上运行它。最近,我将我的设备更改为三星银河笔记5应用编程接口22,每当我试图运行光学字符识别功能时,应用程序就会崩溃。 以下是日志: 致命异常:java。lang.IllegalState

  • 我正在尝试使用JNLP构建一个小程序。我编写了一个Ant脚本来编译java类、构建jar文件并对它们进行签名。我使用与Ant构建的相同的密钥库对所有jar进行了签名。我在Java控制面板中授予了显示自签名小程序的权限。如果我直接运行JNLP文件,一切都很好,但是如果我将此小程序放在网页中,我会得到不满意的LinkError。 这是我得到的错误: 我根据操作系统构建的每个jar文件都包含gluege

  • 我试图编写一个简单的Java程序,通过JNI调用C函数来打印“Hello World”。一切编译都没有错误,但当我运行程序时,我得到一个“UnsatisfiedLinkError:找不到依赖库”。 根据Dependency Walker和dumpbin的说法,唯一的依赖项是“kernel32.dll”,在C:\Windows\System32及其依赖项中,也在System32中。 使命感 返回时没

  • 嘿,我正在尝试使用tess4j为tesseract,并在mac osx上为eclipse解决这个问题。 我的tesseract在终端上运行良好,但是试图通过tesseract运行tess4j会给我带来一个错误。