Как просмотреть байт код класса в рантайме?

167
16 февраля 2018, 18:53

Как получить байт код класса, это понятно, можно при помощи идеи или же дефолтными средствами

javap -c -s -verbose и путь к классу.

А вот как посмотреть код над которым jvm выполнила оптимизации, который крутится в рантайме я не знаю. Возможно ли такое вообще, если да, то как это сделать?

Answer 1

Можно увидеть код, который генерируется в рантайме jit компилятором. Это возможно сделать, например, при помощи программы jit watcher
Из возможностей этой программы:

  • просмотр сгенерированного кода после каждого этапа компиляции
  • просмотр байт кода и асемблеровского кода
  • удобная навигация по коду и определения соотвествия между java, байт кодом и асемблеровским кодом

READ ALSO
Spring Boot, Tomcat: Не мапит реквесты

Spring Boot, Tomcat: Не мапит реквесты

Написал сервис на Spring Boot, после чего, было необходимо перевести его на TomcatДля этого необходимо было добавить плагин в gradle, чтобы получить...

193
Тест с помощью selenium java [требует правки]

Тест с помощью selenium java [требует правки]

Всем приветХочу написать тест, который будет открывать веб-страничку, считывать нее текст, и в зависимости от результата нажимать ту или...

210
Radiogroup isChecked repeat

Radiogroup isChecked repeat

В своём приложении я использую radiogroup в которой находится несколько radiobuttonПри выборе, radiobutton передаёт имя своего id на активити 2

220
Уникальный идентификатор объекта

Уникальный идентификатор объекта

Пишу сервер на NIO2Для каждого подключившегося клиента создается объект, который обрабатывает его события

239