三十六、sigar配置那些事

Sigar全称是SystemInformation Gatherer And Reporter,中文名是系统信息收集和报表工具。要想使用sigar是不是引入了Sigar.jar(Sigar.jar包是通过本地方法来调用操作系统API来获取系统相关数据。)就ok了呢?非也。

即便在pom文件中配置好了sigar:

<dependency>
            <groupId>org.fusesource</groupId>
            <artifactId>sigar</artifactId>
            <version>1.6.4</version>
        </dependency>

运行一下也会报错java.lang.UnsatisfiedLinkError。这个异常表示找不到本地类库。native方法声明错误等情况下出现,一般是因为缺少某些dll或加载dll时出错。

那么都需要补充哪些文件呢?这要分Windows和Linux系统两种情况。

Linux操作系统下Sigar.jar依赖libsigar-amd64-linux.so或libsigar-x86-linux.so,将他们置于/usr/lib下即可。
Windows操作系统下Sigar.jar依赖sigar-amd64-winnt.dll、sigar-x86-winnt.dll、jug--asl.jar、junit.jar、log4j.jar。比如sigar-1.6.4这个版本,引用的其他jar包的版本如下即可:


注意要将这些文件全部放入你的jdk/jre/bin目录下,记得是全部,假如只丢入Sigar.jar、sigar-amd64-winnt.dll、sigar-x86-winnt.dll还是会同样的报错。




你可能感兴趣的:(三十六、sigar配置那些事)