Почему VisualVM Profiler не профилирует мое консольное приложение Scala?

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

Я пытаюсь использовать VisualVM для профилирования моего консольного приложения Scala. Я делаю это, запуская VisualVM, запуская свое приложение Scala, открывая его узел в VisualVM, переходя на вкладку «Profiler» и нажимая «CPU». Кнопка становится серой на некоторое время (при этом статус никогда не меняется ни на что из «профилирование неактивно»), затем снова становится активным, но данные профилирования не отображаются.

Приложение выполняет чтение файла, обработку данных (что занимает около минуты), вывод данных в стандартный вывод и выход. Я также пытался добавить Thread.sleep(60000)в начало и конец программы, чтобы у VisualVM было достаточно времени для ее захвата и выполнения работы, однако ничего не изменилось.

В отличие от связанного вопроса, на который я ссылался, я не запускаю свое приложение из Eclipse или чего-либо еще — я использую следующую командную строку для его запуска:

java -classpath myapp.jar:lib/* MyApp.Main

все библиотеки (включая scala-library .jar) помещаются в lib/. Приложение работает как положено.

Обновления:

  • Я попробовал YourKit Java Profiler 11.0.2, но он не работает с AttachNotSupportedException.
  • С помощью YourKit мне удалось подключить агент вручную.
  • Кажется, стоит подчеркнуть, что я не запускал приложение из IDE (или инструмента сборки) и не модифицировал какие-либо параметры JVM, кроме пути к классам. Насколько я понимаю, эта проблема зависит от версии JVM и проблем с пользователем/разрешением и. Цель состоит в том, чтобы выяснить реальный механизм проблемы и способ настроить все для работы.

Версии используемого программного обеспечения:

  • YourKit Java Profiler 11.0.2
  • VisualVM 1.3.4
  • SBT 0.12.3 (для сборки, но не для запуска (на самом деле я пробовал обе))
  • Scala 2.9.2
  • Oracle Java 1.7.0_04-b20
  • XUbuntu Linux 12.04 32-бит i386
  • Ядро Linux 3.2.0-24-generic-pae

8
задан Community 23 May 2017 в 12:25
поделиться