调用JProfiler时出现UnsatisfiedLinkError

时间:2015-05-28 12:55:05

标签: java jenkins jprofiler

我正在尝试使用JProfiler的离线分析API将Jprofiler 8.1.4与jenkins集成。 以下是写入

的程序
  • 启动JProfiler Recording。
  • 保存快照。
  • 停止JProfiler记录。

    import java.io.File; import java.io.IOException;

    公共类TestJenJPIntegration {     public static Connection connObj = null;     public static void recordCPUdata()抛出java.io.IOException,InterruptedException {

        File fileObj;
        fileObj = new File("C:\\Perl\\firstSnap.jps");
        Controller.startCPURecording(true);
                System.out.println("CPU recording started..");
    
                   Controller.saveSnapshot(fileObj);
        System.out.println("Saved snapshot");
    
                   Controller.stopCPURecording();
        System.out.println("CPU recording stopped..");    
    
    }
    
    public static void main(String[] args) throws IOException, InterruptedException {
          try {
    
            recordCPUdata();
        } catch (IOException e) {
            e.printStackTrace();
        }
    
    }
    

    }

Jprofiler工具可以正常工作以开始录制,保存快照并停止录制。但是当我执行程序时,我收到以下错误消息UnsatisfiedLinkError:

  • 我使用了JProfiler本身提供的Demo Server Profiling。我正在运行演示应用程序的同一系统中进行概要分析。
  • 注意:服务器和客户端使用相同的JProfilerTI.dll会出现问题。

java.lang.UnsatisfiedLinkError:com.jprofiler.agent.InterceptionCallee.registerI     nterceptions0(Z [LCOM / JProfiler的/剂/ util的/小时; Ljava /郎/反映/场; Ljava /郎/     反映/字段; Ljava /郎/反映/场; Ljava /郎/反映/场; Ljava /郎/ refle     CT /场; Ljava /郎/反映/场; Ljava /郎/反映/场; Ljava /郎/反射/网络连接     场; Ljava /郎/反映/场; Ljava /郎/类; Ljava /郎/反映/方法; Ljava / LA     纳克/反映/方法;)V             at com.jprofiler.agent.InterceptionCallee.registerInterceptions0(Native     方法)             在com.jprofiler.agent.InterceptionCallee.registerInterceptions(ejt:152)

        at com.jprofiler.agent.probe.y.a(ejt:181)
        at com.jprofiler.agent.probe.y.a(ejt:37)
        at com.jprofiler.agent.Agent.initStatic(ejt:320)
        at com.jprofiler.agent.Agent.<clinit>(ejt:98)
        at com.jprofiler.agent.ControllerImpl.startCPURecording(ejt:53)
        at com.jprofiler.api.agent.Controller.startCPURecording(ejt:108)
        at TestJenJPIntegration.recordCPUdata(TestJenJPIntegration.java:24)
        at TestJenJPIntegration.main(TestJenJPIntegration.java:45)
JProfiler> Native library not found. Ignoring controller call.

/ 用户打印声明 /

CPU recording started..

Exception in thread "_jprofiler_offline_comm" java.lang.UnsatisfiedLinkError: co
m.jprofiler.agent.ControllerImpl.saveSnapshot0([BLjava/lang/Object;)V
        at com.jprofiler.agent.ControllerImpl.saveSnapshot0(Native Method)
        at com.jprofiler.agent.ControllerImpl.access$100(ejt:18)
        at com.jprofiler.agent.h.run(ejt:186)

/ 用户打印声明 / Saved snapshot

JProfiler> Native library not found. Ignoring controller call.

/ 用户打印声明 / CPU recording stopped..

1 个答案:

答案 0 :(得分:0)

com.jprofiler.api.platform不是用于脱机分析,而是用于编写直接分析分析数据的程序。您应该只使用Controller类并使用集成向导给出的脱机开关传递-agentpath VM参数

会话 - &gt;集成向导 - &gt;新远程集成