首页 > 解决方案 > JProfiler9 无法执行 jpenable

问题描述

我必须从安装在 Windows 机器上的 JProfiler 远程分析监视安装在 linux 机器上的 vertx 服务器。在我的 linux 机器上,为了让 JVM 准备好进行分析,我执行了以下操作来运行 jpenable:

  1. 下载https://download-gcdn.ej-technologies.com/jprofiler/jprofiler_linux_9_2_1.tar.gz
  2. 解压 tar -zxvf jprofiler_linux_9_2_1.tar.gz
  3. 执行 jprofiler9/bin/jpenable。由于只有一次运行的进程是我的 vertx 服务器,因此它是自动选择的。它提示选择分析模式,如下所示:

    请选择分析模式:
    GUI模式(附加JProfiler GUI)[1,Enter]
    离线模式(使用配置文件设置分析设置)[2]

  4. 当我选择 1 并按 Enter 时,它会引发以下异常:

    java.lang.ExceptionInInitializerError
     at java.net.ServerSocket.setImpl(ServerSocket.java:303)
     at java.net.ServerSocket.(ServerSocket.java:245)
     at java.net.ServerSocket.(ServerSocket.java:143)
     at com .ejt.framework.g.ab.b(ejt:30)
     在 com.ejt.framework.g.ab.a(ejt:13)
     在 com.jprofiler.cli.EnableApplication.l(ejt:141)
     在 com。 jprofiler.cli.EnableApplication.a(ejt:131)
     at com.jprofiler.cli.EnableApplication.h(ejt:95)
     at com.jprofiler.cli.ba(ejt:26)
     at com.jprofiler.cli.EnableApplication.main (ejt:272)
     在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
     在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
     在 java.lang.reflect.Method.invoke(Method.java:498)
     在 com。 exe4j.runtime.LauncherEngine.launch(LauncherEngine.java:65)
     at com.install4j.runtime.launcher.UnixLauncher.main(UnixLauncher.java:57)
    原因:
     java.lang.ClassLoader.loadLibrary( ClassLoader.java:1847)
     在 java.lang.Runtime.loadLibrary0(Runtime.java:871)
     在 java.lang.System.loadLibrary(System.java:1124)
     在 java.net.AbstractPlainSocketImpl$1.run(AbstractPlainSocketImpl.java: 84)
     在 java.net.AbstractPlainSocketImpl$1.run(AbstractPlainSocketImpl.java:82)
     在 java.security.AccessController.doPrivileged(Native Method)
     在 java.net.AbstractPlainSocketImpl.(AbstractPlainSocketImpl.java:81)
     ... 还有 16 个

不知道是什么导致了这个异常。我用谷歌搜索了它,没有遇到任何面临相同问题和解决方案的人。任何人都可以帮助找出导致此异常的原因。

注意:Linux机器上安装的Java:
openjdk版本“1.8.0_242”
OpenJDK Runtime Environment(build 1.8.0_242-b08)
OpenJDK 64-Bit Server VM(build 25.242-b08,混合模式)

标签: javalinuxmonitoringprofilerjprofiler

解决方案


此异常是由 8u242 中的更改引起的,该更改已针对 8u252 再次退出。对于旧版本的 JProfiler,您必须使用 8u242 以外的 JRE。您可以通过定义环境变量来做到这一点INSTALL4J_JAVA_HOME_OVERRIDE

JProfiler 11.1.1+ 也适用于 8u242。


推荐阅读