`

(可行) 使用 sigar 时,出现UnsatisfiedLinkError

 
阅读更多

 

 sigar 工具类主要是用于收集操作系统信息及系统信息的工具类,如CPU、内存情况,操作系统类型、网络等信息的收集,而且可以用于大多数的操作系统。 Windows, linux, os 等等。底层功能操作,主要是由C写。

 

所以使用时,需要将 XXX.so 或是 XXX.dll 等文件拷至相关文件夹。

 

如 windows 下使用,需要将 sigar-amd64-winnt.dll(64位)或 sigar-x86-winnt.dll (32位) 文件 复制到 c:\Windows\System32 下。然后就可以将 sigar.jar 引入到 eclipse 中使用。

 

但是如果在 tomcat 中使用时,可能会出现UnsatisfiedLinkError 异常。解决方法有两种:

 

(1) 将 sigar-amd64-winnt.dll  

              sigar-x86-winnt.dll 放到 tomcat  的 lib 下

 

  (2) 先找到 jdk 的 bin 文件夹,通过 System.out.println(System.getProperty("java.library.path"));

 

         可以找到,然后将

         sigar-amd64.winnt.dll   sigar-x86-winnt.dll 复制到 jdk 的 bin 下

 

   我是通过第二种方法解决的。

 

 

   如果是 linux 时,需要将 

 

    libsigar-amd64-linux.so 复制到 /usr/lib64 下,当然还要修改其 文件权限为 644 或是更高的权限才能正常执行。

分享到:
评论

相关推荐

    使用sigar获取系统信息,内存,磁盘,jvm虚拟机等

    1. **JVM内存信息**:使用`Sigar.getProcState(pid)`和`Sigar.getProcMem(pid)`可以获取Java进程的内存使用情况,包括堆内存、非堆内存等。 2. **JVM线程信息**:`Sigar.getProcState(pid)`还可以获取Java进程的...

    sigar获取服务器负载信息需要的sigar等相关的文件

    包括:libsigar-aarch64-linux.so、libsigar-amd64-linux.so、libsigar-x86-linux.so、sigar-amd64-winnt.dll、sigar-x86-winnt.dll、sigar-x86-winnt.lib

    Sigar文档+配置

    使用Sigar时,开发者可以利用Java、Perl、Python、C等语言的API。例如,通过Java API,你可以获取CPU利用率: ```java import org.hyperic.sigar.Sigar; import org.hyperic.sigar.CpuPerc; public class CpuUsage...

    sigar-1.6.4

    解决java引入sigar运行时报错"java.lang.UnsatisfiedLinkError: org.hyperic.sigar.Mem.gather",将压缩包解压后,放入本地项目lib中即可解决该类问题,该jar包由官网下载

    树莓派上使用sigar必需的本地库linuxsigar-arm-linux.so

    树莓派是一款基于ARM架构的微型计算机,常用于嵌入式开发、物联网应用以及教育领域。在树莓派上进行软件开发时,有时我们需要...在实际使用时,需要正确配置和管理这个库,同时利用`sigar`提供的API来编写相应的代码。

    sigar使用教程

    - `sigar.getCpuPerc()` 或 `sigar.getCpuPercList()` 可以获取CPU使用率,包括用户使用量、系统使用量、空闲量和总使用量。 2. **内存信息获取**: - `sigar.getMem()` 可以获取物理内存的总量、已使用量和剩余...

    sigar兼容linux和windows

    在Java环境中,Sigar提供了Java绑定,使得开发者可以轻松地在Java应用程序中使用这些功能。通过引入sigar.jar库,并调用其提供的API,可以便捷地获取到系统级别的信息。例如,以下是一个简单的Java代码示例,用于...

    java使用sigar检测CPU占用率

    Sigar是Hyperic-hq产品的基础包,是Hyperic HQ主要的数据收集组件。它用来从许多平台收集系统和处理信息. 这些平台包括:Linux, Windows, Solaris, AIX, HP-UX, FreeBSD and Mac OSX. Sigar有C,C#,Java和Perl API,...

    sigar.jar、sigar-amd64-winnt.dll、sigar-x86-winnt.dll

    使用Sigar.jar进行系统监控时,首先需要将其添加到项目的类路径中。在Java代码中,可以借助SIGAR_API提供的接口来获取系统信息。例如,获取CPU使用率可以通过以下步骤: 1. 初始化Sigar实例: ```java import org....

    Sigar 使用详解

    一、 Sigar详细介绍 Sigar(System Information Gatherer And Reporter),是一个开源的工具,提供了跨平台的系统信息收集的API,核心由C语言实现的。 Sigar资料地址:...

    使用sigar监控web服务器软硬件信息

    Sigar(System Information Gatherer And Reporter),是一个开源的工具,提供了跨平台的系统信息收集的API。 Sigar API 提供一个方便的接口来收集系统信息,如: ◆系统内存,页面交换,cpu,平均负载,运行时间,...

    sigar-1.6.4 包+Sigar_1.6.4.CHM

    - **进程信息**:使用`sigar_proc_list_get()`获取当前系统上的所有进程信息,或者使用`sigar_pid_get()`获取特定PID的进程详细信息。 - **内存信息**:`sigar_mem_get()`用于获取系统的总体内存使用情况,包括...

    sigar工具包

    在使用Sigar时,你需要将这个库文件与你的应用程序一起部署,或者将其路径添加到系统的PATH环境变量中,以便程序能够正确加载和调用其中的函数。 "DLL工具.exe"可能是一个用于处理DLL文件的实用工具,通常用于注册...

    sigar的使用

    使用Sigar时,首先需要创建一个`Sigar`实例。在Java中,这可以通过以下代码实现: ```java import org.hyperic.sigar.Sigar; import org.hyperic.sigar.SigarException; public class SigarExample { public ...

    hyperic-sigar-1.6.4

    使用Sigar,你完全可以模仿出cpuinfo,meminfo,top,free,ifconfig,ipconfig,netstat,route,df,du,ps,ls等多种unix平台和windows平台的指令. 2.跨平台,支持多数平台 支持的平台包括:windows系列(32系列,IA64系列,AMD64...

    sigar的jar包及dll文件

    当Java应用调用Sigar的API时,这些DLL会被加载并执行相应的系统查询。 4. **Linux环境下的库**: 对于Linux,尽管没有明确的"DLL"文件,但会有类似功能的共享库,如`.so`文件。在Linux上,你可能需要`libsigar.so`...

    sigar java 监控 本地

    标题中的“sigar java 监控 本地”指的是使用开源库SIGAR(System Information Gatherer and Reporter)来监控Java应用程序在本地操作系统上的运行状态,包括CPU使用率、内存占用、磁盘I/O等关键指标。SIGAR是一个跨...

    sigar的jar包

    在Java中使用Sigar时,首先需要将.sigar.jar文件添加到项目的类路径中,然后加载对应的.dll文件。对于Windows系统,需要确保.dll文件位于系统路径或者应用程序的classpath下。在代码中,通过`org.hyperic.sigar....

Global site tag (gtag.js) - Google Analytics