Вопросы по теме 'java-bytecode-asm'
Есть ли программа для чтения байт-кода Java, реализованная в javascript?
Я знаю, что существует множество библиотек, которые считывают байт-коды, написанные на Java. Кто-нибудь знает о библиотеке байт-кода, реализованной в Javascript?
840 просмотров
schedule
28.10.2022
определение и назначение переменных обнаруживают байт-код asm
Я пытаюсь использовать API дерева байт-кода ASM для статического анализа кода Java. У меня есть ClassNode cn, MethodNode m, и список инструкций в этом методе называется InsnList list.
Предположим, что для заданной инструкции (например,...
1592 просмотров
schedule
17.12.2023
Простой способ собрать пару посетителей ASM-Bytecode?
В настоящее время я реализую некоторый код, который должен для каждого метода класса запускать пару посетителей в файле .class, чтобы инструментировать его байт-код. На данный момент я только что реализовал MethodRenamerVisitor, но это уже становится...
216 просмотров
schedule
20.07.2023
Как скомпилировать код сборки JVM в байт-код?
Если бы я запустил javap -c ASM.class > ASM.java , чтобы получить ассемблерный код, как мне перекомпилировать его обратно в байт-код JVM?
2805 просмотров
schedule
23.03.2024
Проверка ошибок реализации прокси метода с использованием библиотеки модификации байт-кода ASM
У меня возникают трудности с использованием библиотеки байт-кода ASM для создания прокси-методов.
Я хочу преобразовать следующий код:
public ReturnType doSomething( ParameterOne parameterOne,
ParameterTwo parameterTwo ){
ReturnType...
674 просмотров
schedule
20.11.2022
Как использовать visitLdcInsn для загрузки объекта
Я использую ASM для внедрения кода, и до сих пор мне с ним везло. Во время стресс-теста я заметил, что вижу некоторое снижение производительности, поскольку код, который я написал, делает много статических вызовов, чтобы оптимизировать его, я...
1115 просмотров
schedule
19.12.2022
Java ASM, как читать значение байт-кода LOAD или STORE
Я работаю с asm (здесь документы http://asm.ow2.org/asm40/javadoc/user/ ), точнее, я пытаюсь динамически настроить некоторый код. Моя проблема в том, что я не знаю, как и могу ли я через то, что предлагает asm, читать фактические переменные...
1291 просмотров
schedule
19.05.2023
Есть ли аналог visitLdcInsn для загрузки объектов (не константа)?
Мы написали простой интерпретатор PostScript на Java и хотим оптимизировать его, генерируя байт-код непосредственно для определенных частей исходного кода. Для этого нам нужно загрузить объект из контекста контекста байт-кода Java. Указывать такой...
320 просмотров
schedule
24.06.2022
Проверьте байт-код Java, сгенерированный ASM
Я использую ASM ( http://asm.ow2.org/index.html ) для измерения некоторые классы Java. После инструментирования я получу новые файлы .class. Однако иногда, когда я запускаю новые файлы .class, JVM выдает java.lang.VerifyError.
Интересно, есть ли...
44 просмотров
schedule
25.02.2023
Для по сравнению с Doseq (и слишком большой код метода)
user=> (def r (range 1))
user=> (for [a r, b r, c r, d r, e r, f r, g r, h r :when (and (= 0 a) (not= 1 b))]
(list a b c d e f g h))
((0 0 0 0 0 0 0 0))
user=> (doseq [a r, b r, c r, d r, e r, f r, g r, h r :when (and (= 0 a) (not=...
1107 просмотров
schedule
27.07.2022
Замена вызова метода java из поля вызовом метода
Я пытаюсь создать насмешливую структуру в java, которая соответствует конкретным требованиям проекта.
Сценарий таков, у меня есть метод
public String returnRandom(){
String randomString = this.randomGenerator.returnRandom()
}...
1513 просмотров
schedule
18.09.2022
Ошибка проверки JVM «Недопустимый тип в постоянном пуле»
В настоящее время я пишу свой собственный компилятор и пытаюсь скомпилировать следующий код:
List[String] list = List("a", "b", "c", "d")
list stream map((String s) => s.toUpperCase())
System out println list
У компилятора нет проблем с...
7969 просмотров
schedule
16.02.2023
Код операции ifeq/ifne JVM всегда разветвляется
[TL;DR: следующие инструкции байт-кода JVM, похоже, не работают:
iconst_0
istore 6
...sequential
iinc 6 1
jsr L42
...
; L42
iload 6
ifeq L53 ; Always branches!!!
astore 8
iinc 6 -1
; L53
LDC 100
ISUB ; ERROR, returnAddress is at the top of the...
1811 просмотров
schedule
29.03.2023
Создание FrameNode с помощью ASM API
Мне удалось реализовать встроенную оптимизацию метода байт-кода, и сгенерированный код кажется мне нормальным. Тем не менее, проверка завершается с ошибкой с сообщением:
java.lang.VerifyError: Expecting a stackmap frame at branch target 47...
467 просмотров
schedule
19.04.2023
Разобрать приемник вызова метода Java на уровне байт-кода
Я ищу решения для распознавания правильного получателя вызова метода при анализе байт-кодов Java. То есть, чтобы определить, является ли получатель из каких членов поля или аргументов класса.
Возьмите байт-код ниже, например, есть два члена поля:...
147 просмотров
schedule
24.12.2022
Как загрузить постоянный сложный объект в стек с помощью LDCInsnNode в ASM
Я хочу использовать библиотеку ASM для создания метода байт-кода, способного возвращать постоянное значение во время выполнения. Один из классов ASM, который я могу использовать, — это LdcInsnNode. Итак, мой пример кода:
class Myclass{
final...
692 просмотров
schedule
28.08.2022
Прекрасная печать сигнатуры метода Java и обратный анализ
Я делаю редактор байт-кода Java, который переводит байт-код в какой-то промежуточный код, который может быть изменен пользователем, а затем анализирует этот код обратно в байт-код. На данный момент объявление метода выглядит ужасно и трудночитаемо....
1550 просмотров
schedule
20.07.2023
Как преодолеть ошибку VerifyError: Ожидание кадра карты стека для приложения JDK 7/8?
Я использую библиотеку модификации байт-кода ASM 5.0.3 с Tomcat 8 и JDK 8.
Я намерен успешно внедрить байт-код во все классы. Однако я столкнулся со следующей ошибкой:
java.lang.VerifyError: Expecting a stackmap frame at branch target 18...
2709 просмотров
schedule
27.02.2023
как создать экземпляр другого класса с помощью Instrumenting/ASM
Я пытаюсь использовать ASM в javaagent , чтобы изменить создаваемый класс ( sun/misc/URLClassPath ) в другой ( fommil/URLClassPath ), который наследуется от него и переопределяет все методы. Я знаю, что целевой класс ( java/net/URLClassLoader ),...
294 просмотров
schedule
19.01.2024
Байт-код ASM получает значения, передаваемые в качестве аргументов при вызове некоторых методов.
Бьюсь с ASM уже 5 дней и никак не могу решить свою проблему. Требование состоит в том, чтобы получить все значения, переданные в качестве аргументов при вызове метода. Я знаю, что есть много инструментов для этого. Я пошел на ASM (не знаю,...
1919 просмотров
schedule
14.07.2023