java程序加载sigar库报异常的错误的解决
来源:互联网 发布:绘制图纸软件 编辑:程序博客网 时间:2024/06/14 11:16
作者:朱金灿
来源:http://blog.csdn.net/clever101
Sigar(System Information Gatherer AndReporter),是一个开源的工具,提供了跨平台的系统信息收集的API,核心由C语言实现的。
可以被以下语言调用:
C/C++
Java (sigar.jar auto-loads the nativelibrary)
Perl (requires bindings/perl build)
.NET C# (requires bindings/csharp build)
Ruby (requires bindings/ruby build)
Python (requires bindings/python build)
PHP (requires bindings/php build)
Erlang (requires bindings/erl build)
可以收集的信息包括:
1, CPU信息,包括基本信息(vendor、model、mhz、cacheSize)和统计信息(user、sys、idle、nice、wait)
2,文件系统信息,包括Filesystem、Size、Used、Avail、Use%、Type
3,事件信息,类似Service Control Manager
4,内存信息,物理内存和交换内存的总数、使用数、剩余数;RAM的大小
5,网络信息,包括网络接口信息和网络路由信息
6,进程信息,包括每个进程的内存、CPU占用数、状态、参数、句柄
7, IO信息,包括IO的状态,读写大小等
8,服务状态信息
9,系统信息,包括操作系统版本,系统资源限制情况,系统运行时间以及负载,JAVA的版本信息等.
现在编写了一个java程序在sigar库的接口,在一台Win10系统的机器上运行出现异常:
org.hyperic.sigar.Mem.gather(Lorg/hyperic/sigar/Sigar;)V]with root cause
java.lang.UnsatisfiedLinkError:org.hyperic.sigar.Mem.gather(Lorg/hyperic/sigar/Sigar;)V
at org.hyperic.sigar.Mem.gather(NativeMethod)
at org.hyperic.sigar.Mem.fetch(Mem.java:30)
at org.hyperic.sigar.Sigar.getMem(Sigar.java:304)
atcom.haiwan.util.SystemInfo.usage(SystemInfo.java:95)
atcom.haiwan.controller.system.MonitorController.usage(MonitorController.java:73)
网上搜了一些资料,得知是由于java程序没找到sigar库所在路径造成的,需要把把sigar-x86-winnt.dll\sigar-x86-winnt.lib拷贝到java jdk的bin目录下(比如我的是:D:\Program Files (x86)\Java\jre7\bin)。
参考文献:
1. sigar进行JAVA后台系统资源监控错误
- java程序加载sigar库报异常的错误的解决
- java程序获取系统资源--sigar的使用
- 解决java使用sigar获取linux系统内存使用信息报错的问题
- 【错误解决】IDEA的一个错误@Query异常报错
- linux 的java写程序报异常java.net.InetAddress.getLocalHost(InetAddress.java:1505)解决
- windows操作系统下java程序使用sigar的使用问题
- 解决 打包成功后的apk安装后点击进入程序报"程序异常"然后闪退的错误
- java懒加载异常的解决
- 怎样在树莓派上的java代码中使用sigar库
- QT-关于程序异常错误的解决思路
- Java笔记---解决eclipse报PermGen space异常的问题
- Linux下java使用Sigar的配置
- Linux下java使用Sigar的配置
- windows下java使用Sigar的配置
- 【JAVA秒会技术之异常解决】怎么解决eclipse报PermGen space异常的问题
- Android最新的开发环境运行原来环境开发的程序报java.lang.ClassNotFoundException错误解决
- 一般java.lang.NoClassDefFoundError异常错误的问题和解决
- Java 执行外部程序报1072365564错误问题的解决方法
- 第十二周项目1
- 批量提取文件名到txt文档的方法
- DP(动态规划)背包问题
- ubuntu下安装配置shadowsock
- Java压测之四两拨千斤
- java程序加载sigar库报异常的错误的解决
- 傻傻的情绪
- 在myeclipse中ssh框架搭建的麻烦问题
- C#中实现Form的Minimize、Maximize、Close按钮及任务栏图标
- vector第四步修炼之道
- 如何使用PowerBI将文件夹的内容中的所有文件合并为一张表进行统计
- 【在线等急急急!】相差为2的两个素数称为孪生素数。例如,3与5,41与43等都是孪生素数。设计程序求出指定区间上的所有孪生素数对。区间上限和下限由键盘获取。
- 手机号码验证--正则表达式
- Learning Spatial-Aware Regressions for Visual Tracking 阅读笔记