classpath - 为什么在进行 gradle 运行时类路径中缺少 lwjgl?

标签 classpath gradle lwjgl

谁能帮我让 gradle 正确包含 lwjgl?似乎依赖关系被忽略了,因为当我运行 gradle 时,java 找不到库。

我有以下 Maven 文件:

apply plugin:'groovy'
apply plugin:'application'

mainClassName = 'com.martz.zimplatformer.Game'

repositories {
    mavenCentral()
}

dependencies {
    groovy group: 'org.codehaus.groovy', name: 'groovy', version: '1.8.6'
    compile group: 'org.lwjgl.lwjgl', name: 'lwjgl', version: '2.+'
}

当我进行 gradle 运行时,我得到以下堆栈跟踪:
Exception in thread "main" java.lang.UnsatisfiedLinkError: no lwjgl in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1758)
    at java.lang.Runtime.loadLibrary0(Runtime.java:823)
    at java.lang.System.loadLibrary(System.java:1045)
    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)

最佳答案

显然该错误是由于 java 无法找到 native 库。 maven 中有一个 lwjgl-platform 依赖项,但只是添加它并不会将 jvm 指向正确的 native 库。从 lwjgl 网站下载 native 库后,我通过在我的机器上向 native 库添加硬编码路径来使其工作:

run {
    jvmArgs = '-Djava.library.path=/path/to/native/macosx'
}

关于classpath - 为什么在进行 gradle 运行时类路径中缺少 lwjgl?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9960616/

相关文章:

java - Maven 依赖引用旧的 Poi 版本

Android AOP 库

Android Studio 如何手动运行 gradle 同步?

java - LWJGL - 生成图 block 后 ArrayList 为空,并且鼠标单击时无法添加四边形

java - LWJGL 多重纹理不起作用

java - LWJGL 鼠标滚轮 getDWheel() 方法

java - 如何从 Cygwin bash shell 启动在 Eclipse 中开发的 java CLI 程序?

java - JBOSS 库不在类路径中

java - 找不到 Hadoop 作业类

java - Gradle 日志记录输出级别