JVMByteCodeGrabber

396
34
90
Небольшая утилитка позволяющая воровать получать байт код из работающей JVM в том виде в котором он выполняется.
Есть графический интерфейс, несколько форматов сохранения, совместима с доисторическим JDK 1.8.0_231!

Изначально мне нужно было исправить несовместимость моего мода с оптифайном.
А так так оптифайн это закрытое говно с этим возникли некоторые трудности,
возился я несколько дней в итоге решил что нужно как-то получить пропатченный оптифайном байт код.
Сначала попытался использовать JvmDumper (утилита с таким же функционалом) но она не смогла.
В итоге пришол к выводу что нужно писать самим, загорелся идеей, и вот мы здесь.

P.S. Проверить кстати есть ли такие утилиты кроме JvmDumper мне ума не хватило.
P.P.S. Проблемму совместимостью я еще не решил, так как писал это чюдо, надеюсь оно все таки помогёт XD.

Зочем оно надо
В теории должно быть довольно таки полезным для исправления багов на больших сборках,
в место того чтобы молится всем богам писать тонну логирования в каждом сантиметре кода
и по порядку отключать 500 модов в надежде на то что что очередной отключенный мод будет тем самым "проблемным"
Можно будет просто получить класс и посмотреть какая падла что там сделала.
На практике - я не знаю.
Или для изучения того же оптифайна

Запуск
Так как приложение использует Attach API оно должно запускатся на JDK.
Мне сильно не понравилось возится с запуском JvmDumper где было такое же требование
По этому при запуске на jre высветится окно перд-загрузчика, где можно выбрать jdk для запуска.
И соответственно запустится на выбранной jdk
bcg-bootstrap.png

Интерфейс
Думаю вы не маленькие чтобы вам объяснять как этим пользоваться (даже с учётом моих спорых решений)
+ боле менее подробная инструкция есть на гите
Так что вот фотки
bcg-screen-1.png
bcg-screen-2.png
bcg-screen-3.png

Можно сохранять выбранные классы в jar, в zip, или просто в папку
Из костыльного можно сохранять классы в jar а потом пропускать через BON или добавлять как fg.deobf() зависимость,
и читать без майновской обфускации

На этом все, я устал писать
Более подробное описание есть на гите
Если найдете ошибки пишите на гит, исправлю

Исходный код говно, по крайней мере то что связано со свингом
Патамучто этим приложением будет пользоваться 1.5 голых землекопа, где 0.5 землекопа это я
По этому я не отказывал себе в говнокодинге,
(агентскую часть я все же по нормальному сделал)

Ссылки
 
Последнее редактирование:
Нифига бро спасибо!!!
Неужели форум почучут оживает емаеее
 
Назад
Сверху