怎样在树莓派上的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
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
相关文章推荐
- Java--异常
- java.lang.ClassNotFoundException: com.sun.mail.util.MessageRemovedIOException
- java中的加密算法
- struts2 & action&通配符
- 我的第一个Java程序O(∩_∩)O
- Java核心API -- 12(对象序列化和反序列化)
- Java出现No enclosing instance of type ImageViewer is accessible. Must qualify the allocation with an
- Spring AOP(2)动态代理
- [笔记][Java7并发编程实战手册]2.4在同步代码中使用条件-生产者与消费者
- Java生成和操作Excel文件
- 利用Java反射机制和泛型,全自动解析json
- java命令行运行main时jar及其配置
- Java串口通信 ----> 扫描标签获取数据存入数据库
- javaweb中利用filter进行修改字符集
- Spring AOP 实现原理
- java char 和 int 向上转型
- [Java]如何避免啰嗦的代码风格
- 在eclipse 中运行 需sudo root权限执行的程序
- java 集合框架 泛型--15
- java生成csv格式的文件