您的位置:首页 > 编程语言 > Java开发

怎样在树莓派上的java代码中使用sigar库

2015-08-08 18:12 375 查看
官方的sigar库中并不包含针对arm的本地库(so文件),因此,在pi上的java代码调用sigar库时,会出现找不到库的报错信息:

no libsigar-arm-linux.so in java.library.path.......

因此,如果要用的话,唯一的办法是重新编译和部署arm平台上的库才行。

因为sigar是开源的,所以一切都很简单了。可以看这个帖子:
https://groups.google.com/forum/#!topic/openhab/18C7FYpxWTQ
具体的步骤就是:

在pi的终端上运行下面的命令来编译。

cd /usr/src
sudo wget http://sourceforge.net/projects/sigar/files/sigar/1.6/hyperic-sigar-1.6.4-src.tar.gz

sudo tar -zxfhyperic-sigar-1.6.4-src.tar.gz

cd hyperic-sigar-1.6.4-src/bindings/java

sudo ant

执行没错误的话,会生成两个文件:sigar.jar和大家期待的libsigar-arm-linux.so,都放在下面这个目录里面:

/usr/src/hyperic-sigar-1.6.4-src/bindings/jara/sigar-bin/lib

不过目前的状态还不能解决问题,因为还差一步部署库,其实就是把so文件放在java的库目录中。

首先,要知道库目录的物理位置,用这个命令看下:

java -XshowSettings:properties

在出现的一堆结果中找以“java.library.path卡头的那一行,可能有好几个值,但至少会有/lib和/usr/lib这俩。

所以,把libsigar-arm-linux.so复制到/lib目录中就可以了。

最后说下关于适应性的问题:

在树莓派2上试验过,能用。在其它平台没试过,有心人可以试试瞧。

不想自己动手的可以从这里下:
http://download.csdn.net/detail/anod/8978171
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: