运行jmeter的serverAgent源码报错:java.lang.UnsatisfiedLinkError: org.hyperic.sigar.Cpu.gather
报错
INFO 2022-08-13 10:43:49.949 [kg.apc.p] (): Binding UDP to 4444 INFO 2022-08-13 10:43:50.952 [kg.apc.p] (): Binding TCP to 4444 INFO 2022-08-13 10:43:50.954 [kg.apc.p] (): JP@GC Agent v2.2.3 started INFO 2022-08-13 10:43:51.348 [kg.apc.p] (): Accepting new TCP connection INFO 2022-08-13 10:43:51.352 [kg.apc.p] (): Yep, we received the 'test' command INFO 2022-08-13 10:43:51.354 [kg.apc.p] (): Starting measures: cpu: ERROR 2022-08-13 10:43:52.952 [kg.apc.p] (): Error getting metric org.hyperic.sigar.SigarException: java.lang.UnsatisfiedLinkError: org.hyperic.sigar.Cpu.gather(Lorg/hyperic/sigar/Sigar;)V at org.hyperic.sigar.SigarProxyCache.invoke(SigarProxyCache.java:220)at com.sun.proxy.$Proxy0.getCpuPerc(Unknown Source) at kg.apc.perfmon.metrics.CPUTotalMetric.getValue(CPUTotalMetric.java:60) at kg.apc.perfmon.PerfMonMetricGetter.getMetricsLine(PerfMonMetricGetter.java:113) at kg.apc.perfmon.PerfMonWorker.processSenders(PerfMonWorker.java:268) at kg.apc.perfmon.PerfMonWorker.run(PerfMonWorker.java:231) at java.lang.Thread.run(Thread.java:748)
解决:
将 sigar-amd64-winnt.dll 放到 jdk/bin 下
如何拿到 sigar-amd64-winnt.dll?
下载链接:[https://github.com/undera/perfmon-agent/blob/master/README.md] ,可直接使用的 serverAgent-v2.2.3.zip,在 lib 文件夹里面拿到 sigar-amd64-winnt.dll
参考:(可以先按照这里的步骤尝试能否正常运行)
https://www.cnblogs.com/lkwtt/p/10757084.html