JProfiler9 не может выполнить jpenable

Мне нужно контролировать свой сервер vertx, установленный на машине с Linux, с помощью удаленного профилирования JProfiler, установленного на машине с Windows. На моей 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 запущен только один раз, он был выбран автоматически. Было предложено выбрать режим профилирования, как показано ниже:

    Выберите режим профилирования:
    Режим графического интерфейса (подключить с помощью графического интерфейса пользователя JProfiler) [1, Enter]
    Автономный режим (используйте файл конфигурации для установки параметров профилирования) [2]

  4. Когда я выбираю 1 и нажимаю Enter, возникает следующее исключение:

    java.lang.ExceptionInInitializerError
    в java.net.ServerSocket.setImpl(ServerSocket.java:303)
    в java.net.ServerSocket.(ServerSocket.java:245)
    в java.net.ServerSocket. (ServerSocket.java:143)
    в 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)
    в com.jprofiler.cli.EnableApplication.h(ejt:95 )
    в com.jprofiler.cli.ba(ejt:26)
    в com.jprofiler.cli.EnableApplication.main(ejt:272)
    в sun.reflect.NativeMethodAccessorImpl.invoke0(собственный метод)
    в 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)
    в com.install4j.runtime.launcher.UnixLauncher.main(UnixLauncher.java:57)
    Вызвано: java.lang.NullPointerException
    в 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(собственный метод)
    > на java.net.AbstractPlainSocketImpl.(AbstractPlainSocketImpl.java:81)
    ... еще 16

Не знаю, что вызывает это исключение. Я гуглил об этом, и нигде я не встречал никого, кто сталкивался с той же проблемой и решением для одного и того же. Может ли кто-нибудь помочь выяснить, что вызывает это исключение.

Примечание. Java, установленная на компьютере с Linux:
версия openjdk "1.8.0_242"
Среда выполнения OpenJDK (сборка 1.8.0_242-b08)
64-разрядная виртуальная машина сервера OpenJDK (сборка 25.242-b08, смешанный режим)


person saikamesh    schedule 19.04.2020    source источник


Ответы (1)


Это исключение вызвано изменением в 8u242, которое снова было отменено для 8u252. В более старых версиях JProfiler вы должны использовать JRE, отличную от 8u242. Вы можете сделать это, определив переменную среды INSTALL4J_JAVA_HOME_OVERRIDE.

JProfiler 11.1.1+ также работает с 8u242.

person Ingo Kegel    schedule 19.04.2020