打好jar包传到linux后,运行java -jar xxxx.jar后报错:no libsigar-amd64-linux.so in java.library.path ;
sigar主要是用来获取主机信息的 ;
解决步骤:
要先去下个东西http://pan.baidu.com/s/1pJK6Nur
我们需要获取到java.library.path这个路径,方法是写个用小的java程序来实现 ;
System.out.println(System.getProperty("java.library.path"));
在main方法中写上这一条指令来打印系统中的java.library.path路径;(如我的centos的路径为:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib) ;
解压上面下载的压缩包,然后仔细阅读解压后生成的文件夹中的"备注.txt"这个文本的前5行,也就是下面列出来的内容:
sigar 测试项目 在window环境下
只需要一下2个依赖:
sigar.jar
sigar-x86-winnt.dll
如果环境为linux,则在hyperic-sigar-1.6.4\sigar-bin\lib中寻找替换对应的sigar-x86-winnt.dll 文件(linux下为os文件,window下为dll) ;
将“java读取系统信息\hyperic-sigar-1.6.4\sigar-bin\lib”中,与你即将获取信息的主机所用系统相对应的文件(如ubuntu对应的是libsigar-amd64-linux.so)复制到你在第二步获取到的java.library.path路径中 ;
原文来自:https://my.oschina.net/u/1160316/blog/755574 ;感谢