我目前正尝试在 maven-build 中使用 Sigar,它每次都显示:
“org.hyperic.sigar.SigarException:java.library.path 中没有 libsigar-x86-linux.so”
我已经使用 mvn install:install-file -DgroupId=org.hyperic -DartifactId=sigar -Dversion=1.6.4 -Dpackaging=jar -Dfile=sigar.jar(其中 sigar.jar 是一个jar 仅包含 org 文件夹中的文件,而 maven 依赖项包含 lib 文件夹中的内容),但随后找不到 .so 文件。
我试图找到答案,大多数人说应该解压缩文件,如 Unzip dependency in maven .解压缩(在通过 install:install-file 安装其他东西之后)确实工作正常,但毕竟文件不包含在路径中。
然后我试图找到一些东西来将文件包含在构建路径中,所以我做了这样的事情:Surefire JUnit Testing using Native Libraries (我想在测试中使用 sigar),但这也没有改变任何东西。我已经尝试过许多不同的文件夹,甚至将文件本身而不是它所在的文件夹添加到库路径中,但即使这样:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<forkMode>once</forkMode>
<argLine>-Djava.library.path=${project.build.directory}/lib/libsigar-x86-linux.so</argLine>
</configuration>
</plugin>
不起作用,但文件显然在那里。我正在使用 Maven 2.2.1。
有没有人提示如何让 sigar 在这种情况下工作?
提前致谢, 达格热
最佳答案
使用 surefire 插件,您不需要在参数前加上“D”前缀(例如 - -java.library.path=${project.build.directory}/lib/libsigar-x86-linux.so)。
关于java - 将 SIGAR 与 maven 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16263443/