今天,处理了一个windows操作系统下java程序使用sigar的使用问题。之前是将dll文件放置在C:\Windows\SysWOW64下。后来,还是会报错(调用获取cup信息时出错),网上找了好久,发现需要在你运行程序时依赖的jdk的安装路径下的bin目录下,放置对应的dll文件(sigar-x86-winnt.dll或sigar-amd64-winnt.dll),重启服务,运行,ok
ps:可使用System.out.println(System.getProperty("java.library.path"));获取你的jdk路径(打印出来的就是对应的jdk下的bin路径)