Описание тега bytecode-manipulation
Манипуляции с байт-кодом виртуальной машины низкого уровня. Включая создание / изменение / оптимизацию / и т.д. байт-кода для различных виртуальных машин. Например, JVM, Python VM, Lua VM и т. Д.
1
ответ
Получить InputStream класса, который создается динамически (используя байт-код)?
Я создаю класс динамически - создавая байт-код и загружая его с помощью загрузчика классов. Позже мне нужно получить InputStream этого класса. С общим классом я получаю это, получая ресурс URL для этого класса, а затем открыть поток (url.openStream(…
16 окт '16 в 18:55
1
ответ
Инструментарий для добавления регистрации в код Scala
В Java мы можем использовать AspectJ прозрачно добавить ведение журнала в классы Java (или, возможно, использовать другие инструменты инструментария байт-кода). Теперь мне интересно, как прозрачно добавить логирование в функции Scala. Я хотел бы инс…
06 май '13 в 09:19
1
ответ
Чтение байт-кода из выгруженных классов во внешних jarfiles
В моем Java-приложении я хочу прочитать содержимое байт-кода из файлов классов, которые на самом деле не загружены, в файлы JAR, которые также не загружены. Например, мне нужно иметь возможность взять любой данный jarfile и найти все классы внутри н…
13 апр '13 в 19:02
1
ответ
Получение байт-кода класса на Android
Я хочу отправить по сети файл класса (.class) для выполнения на удаленном сервере. Я не могу использовать сериализацию, потому что класс не существует на стороне сервера, и я хочу динамически добавлять новые классы. Я не хочу использовать RMI. На De…
06 мар '15 в 19:47
2
ответа
Ломбок на Дженкинс
Я только начал использовать способность Lombok автоматически генерировать геттеры и сеттеры для Java-бинов в моей локальной среде Eclipse, изменив путь к загрузочному классу: -vmargs -javaagent:lombok.jar -Xbootclasspath/a:lombok.jar Локально работа…
02 дек '15 в 14:06
1
ответ
Автоматическое завершение сгенерированного Java-кода в Eclipse
Я хотел бы сделать автоматически сгенерированный код доступным для редактора Eclipse для автоматического завершения Следующие случаи: 1) XML-документ, описывающий модель данных и Java-процессор, создает исходный код Java. Прямо сейчас мне нужно запу…
22 ноя '10 в 23:08
1
ответ
Создать метод с использованием ASM
Используя ASM, мне нужно изменить метод, затем мне нужно вставить в него два метода. Я получил модификацию в порядке, но как мне создать метод? Нужен ли мне отдельный MethodVisitor, или я могу использовать тот же, но назвать что-то еще?
13 мар '16 в 00:43
1
ответ
Как изменить значение статического поля с помощью BCEL?
Я хочу сбросить статическое поле, используя, например, BCEL private static final int myValue = 1; в myValue = 2, Использование другой библиотеки байт-кода, такой как ASM, невозможно.
18 сен '13 в 18:06
1
ответ
Как использовать visitLdcInsn для загрузки объекта
Я использую ASM для внедрения кода, и мне повезло, что во время стресс-теста я заметил, что вижу некоторое снижение производительности, поскольку код, который я написал, выполняет много статических вызовов, чтобы оптимизировать его, я пытался кэширо…
30 сен '13 в 12:50
2
ответа
java.lang.VerifyError с использованием visitJumpInsn
Я пытался использовать asm для BCI, и у меня есть требование, где я должен вводить "если условие", поэтому я попытался использовать что-то вроде ниже Below is the code snippet..if i comment the jump instruction things work fine..with jump instructio…
30 окт '13 в 12:04
1
ответ
Как Spring может сопоставить параметр запроса только по формальному имени параметра?
Предположим, у меня есть следующий фрагмент кода: @RequestMapping(method = RequestMethod.GET) public List<Article> getArticles(@RequestParam int offset, @RequestParam int limit) { ... } Как Spring может сопоставить параметры HTTP-запроса с пра…
03 июн '18 в 09:22
5
ответов
Переписывание вызовов методов в скомпилированных классах Java
Я хочу заменить вызовы данного класса вызовами другого класса в теле метода при анализе файлов скомпилированного класса...или, другими словами, существует ли метод определения использования данного класса в методе и замены только этой части метода с…
11 авг '09 в 05:26
1
ответ
Есть ли инструмент для генерации кода ASM ClassWriter?
Я хочу создать динамические классы Java, я использую шаблон для генерации исходного кода, а затем использую jasper jdt для компиляции. Но теперь я хочу удалить зависимость для jdt и создать байт-код класса напрямую с ASM. Исходный код составляет око…
29 янв '12 в 16:59
6
ответов
Как заменить метод, возвращающий тип?
Это всего лишь учебный эксперимент для развлечения. Я играю с bytecode манипуляция. Я просто бездельничаю для изучения с asm в java, Интересно, можно ли заменить возвращаемый тип метода из интерфейса? Допустим, у меня есть interface: interface Modif…
31 окт '13 в 15:54
1
ответ
Неверная ошибка индекса постоянного пула в граалях
У меня есть приложение Grails, которое я развернул на своем ящике с линодами. Несколько дней он работал нормально, но теперь выдает эту ошибку на всех страницах: Caused by: java.lang.VerifyError: (class: org/codehaus/groovy/runtime/InvokerInvocation…
17 янв '11 в 13:57
2
ответа
Чтобы получить hashCode() объекта, который вызывает определенный метод в Java
Я пытаюсь получить значение hashCode() объекта, который вызывает определенный метод в Java. Например, public class Caller { public void aMethod() { Callee calleeObj = new Callee(); calleeObj.aSpecificMethod(); //do something } } То, что я хочу знать…
25 май '15 в 08:15
3
ответа
Почему Java 7 Bytecode Verifier жалуется на этот стековый фрейм?
У меня есть метод, который я изменил в классе Java 7 (основная версия 51). С помощью javap Я посмотрел на байт-код и карту стека кадров. Все выглядит хорошо public int addOne(int); flags: ACC_PUBLIC Code: stack=2, locals=2, args_size=2 0: iload_1 1:…
22 дек '13 в 00:48
2
ответа
Как скаляк помечает скомпилированные файлы?
Посмотри на этот вопрос. Когда вы открываете .class файл с включенным плагином scala (Intellij Idea) показывает код scala, но когда он выключен, плагин декомпиляции java показывает декомпилированный код java. Обратите внимание, что .class файлы, кот…
19 янв '18 в 06:24
1
ответ
Элегантный способ изменить тип (класса-) экземпляра в байт-коде Java
В течение некоторого времени я работал над решением следующей проблемы. Допустим, у меня есть следующий код Java: public class A { public void start() { List l = new ArrayList(); l.add("abc"); System.out.println( l.get(0) ); } } Результатом компиляц…
28 май '14 в 08:50
1
ответ
Неопределенный метод для типа AgentBuilder.Default ByteBuddy
Метод rebase(( type) -> {}) не определен для типа AgentBuilder.Default. public static void premain(String arg, Instrumentation inst){ new AgentBuilder.Default() .rebase(type -> type.getSimpleName().equals("Calculator")) .transform((builder, typeD…
14 июл '17 в 10:19