Объединение нескольких классов Java с ASM во время выполнения - PullRequest
4 голосов
/ 30 октября 2011

Я хотел бы объединить несколько классов Java в один. Я прочитал документацию ASM и это http://www.jroller.com/eu/entry/merging_class_methods_with_asm, но я не могу понять, как я могу достичь своей цели.

Есть ли более подробные примеры по этому поводу?

Спасибо

1 Ответ

0 голосов
/ 28 января 2013

в java 1.5 есть функция под названием инструментовка, которая позволяет вам манипулировать байт-кодом программы во время выполнения. Кроме того, вы также можете манипулировать байтовым кодом, пока загрузчик классов загружает определенный класс в память JVM. инфраструктура ASM предоставляет вам инструменты для простого манипулирования байтовым кодом путем преобразования ассемблера байтового кода в нечто читаемое и добавления некоторых утилит для упрощения вашей работы. обратите внимание, что манипулирование байтовым кодом является очень продвинутой техникой, и вам действительно нужно знать о JVM и байтовом коде, прежде чем делать это. Я лично предлагаю вам сделать идеи, которые появляются выше. но если вы все еще занимаетесь этим, я предлагаю вам прочитать об инструментах здесь: http://www.javalobby.org/java/forums/t19309.html и затем глубокое погружение в систему ASM или javaassist: http://sleeplessinslc.blogspot.co.il/2008/07/java-instrumentation.html Я думаю, что Java легче помочь, я предлагаю работать с этим. я надеялся, что помогу

...