Java 项目中的引用库只有在我指定它们在 IDE 中的位置时才能找到本机 dll
Referenced Library in Java Project only finds native dll when I specify where they are in IDE
我在 eclipse 中有一个使用本机库(两个 dll)的库。 dll 与 jar 位于同一文件夹中。当我运行应用程序出现错误时:
java.lang.UnsatisfiedLinkError: no xx in java.library.path
当我通过双击本机库位置 link 库时,运行 即可正常工作。但是,我不想必须这样做,我希望它无需通过 IDE 配置即可工作。我希望图书馆即插即用。
Q1: .jar 库引用的.dll 的约定位置在哪里?
问题 2:当有人在 eclipse 中引用我的库时,我如何确保它在没有进一步 IDE 配置的情况下工作?
错误清楚地解释了您的本机库不在 java.library.path
的默认位置
您只需将 属性 java.library.path
设置为存储所有本机库的文件夹。您可以通过在命令行 -Djava.library.path=C:/nativeLibs/
中给出参数来做到这一点
或
将您的库复制到 java.library.path
的默认位置
参考 Default Java library path? java.library.path
的默认位置
我在 eclipse 中有一个使用本机库(两个 dll)的库。 dll 与 jar 位于同一文件夹中。当我运行应用程序出现错误时:
java.lang.UnsatisfiedLinkError: no xx in java.library.path
当我通过双击本机库位置 link 库时,运行 即可正常工作。但是,我不想必须这样做,我希望它无需通过 IDE 配置即可工作。我希望图书馆即插即用。
Q1: .jar 库引用的.dll 的约定位置在哪里?
问题 2:当有人在 eclipse 中引用我的库时,我如何确保它在没有进一步 IDE 配置的情况下工作?
错误清楚地解释了您的本机库不在 java.library.path
您只需将 属性 java.library.path
设置为存储所有本机库的文件夹。您可以通过在命令行 -Djava.library.path=C:/nativeLibs/
或
将您的库复制到 java.library.path
参考 Default Java library path? java.library.path