将SIGAR与maven一起使用

时间:2013-04-28 13:41:56

标签: java maven sigar

我目前正在尝试在一个maven-build中使用Sigar,它每次都会说:

“org.hyperic.sigar.SigarException:java.library.path中没有libsigar-x86-linux.so”

我已经使用mvn install将Sigar安装到maven:install-file -DgroupId = org.hyperic -DartifactId = sigar -Dversion = 1.6.4 -Dpackaging = jar -Dfile = sigar.jar(其中sigar.jar是一个jar只与org-folder中的文件有关,而maven依赖于lib-folder中的东西),但是它找不到.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工作吗?

提前致谢, DaGeRe

1 个答案:

答案 0 :(得分:0)

使用surefire插件,您不需要在参数前加上'D'前缀(例如-java.library.path = $ {project.build.directory} /lib/libsigar-x86-linux.so)。