最近在做一个系统监控的东西,用到了第三方jar 包(sigar.jar),但是Windows操作系统下Sigar.jar还依赖于sigar-amd64-winnt.dll或sigar-x86-winnt.dll。用Eclipse开发时,提示:
0 [main] DEBUG Sigar  - no sigar-x86-winnt.dll in java.library.path
org.hyperic.sigar.SigarException: no sigar-x86-winnt.dll in java.library.path
at org.hyperic.sigar.Sigar.loadLibrary(Sigar.java:172)
at org.hyperic.sigar.Sigar.<clinit>(Sigar.java:100)
at lab.sigar.getSysInfo.main(getSysInfo.java:24)
请教如何导入sigar-x86-winnt.dll。
J / Invoke貌似有解决的办法,但是只能免费30天,显然不适合做公司的产品。哪位前辈做过类似的,希望给点建议?

解决方案 »

  1.   

    在java程序中使用
    System.out.println(System.getProperty(“java.library.path”));
    获取java library 的路径,返回的路径会有很多个,随便找一个将下载包 hyperic-sigar-1.6.4\sigar-bin\lib 中的所有文件复制进去,运行程序试一下,如果还报错,可以换其他的目录试试。已经尝试可以解决
      

  2.   

    在windows设置环境变量,java.library.path,我的做法是把dll文件放在System32文件夹里,环境变量里引用该文件地址
      

  3.   

    我把所有的path都试了为什么还是找不到