0

我在 NetBeans 中有一个 Maven 项目,它具有各种依赖项,允许我绘制一些 3D 图表/图形(JOGL、Gluegen 和 JZY3D)。如果我从 NetBeans 运行项目,这些工作正常,但是当我将项目构建到 JAR 文件中时,我得到以下...

Exception in thread "Building 3D Scatter Plot" java.lang.UnsatisfiedLinkError: no gluegen-rt in java.library.path
    at java.lang.ClassLoader.loadLibrary(Unknown Source)
    at java.lang.Runtime.loadLibrary0(Unknown Source)
    at java.lang.System.loadLibrary(Unknown Source)
    at com.jogamp.common.jvm.JNILibLoaderBase.loadLibraryInternal(JNILibLoaderBase.java:442)

这是 Maven/NetBeans 没有构建具有所有正确依赖项的 JAR 的问题,还是我在这里遗漏了什么?

4

2 回答 2

3

对于本机库的依赖项,该库必须在您的系统属性中或在系统属性PATH中列出。java.library.path您可以将其作为参数传递给 java 进程,如下所示:java -Djava.library.path=/path/to/dir

我认为您在 Netbeans 之外进行操作时可能会遗漏这部分内容。

于 2012-12-20T14:43:27.060 回答
0

在我看来,它正在搜索一个 dll (gluegen-rt.dll),它应该在 java 库路径中。

您可以添加一个 dll 依赖项(您需要在您的 repo 或 Nexus 中手动添加它):

<dependency>
    <groupId>gluegen-rt</groupId>
    <artifactId>gluegen-rt</artifactId>
    <type>dll</type>
</dependency>
于 2012-12-20T14:56:24.860 回答