Вопросы по теме 'javassist'

Почему Javassist настаивает на поиске значения аннотации по умолчанию, если оно указано явно?
Я использую Javassist для добавления и изменения аннотаций в package-info "классе". В некоторых случаях мне нужно иметь дело со следующим пограничным случаем. Кто-то (неправильно) указал аннотацию @XmlJavaTypeAdapters в пакете package-info...
696 просмотров
schedule 28.04.2023

Javassist: проверьте, является ли объект прокси
Я использую javassist.util.proxy.ProxyFactory для создания прокси в своем проекте. И в какой-то другой части кода я хотел бы иметь возможность проверить, проксируется ли объект или нет. Итак, мой вопрос: есть ли способ проверить, является ли...
4021 просмотров
schedule 05.07.2022

Получение класса javassist с помощью playframework
Я пытаюсь получить ссылку CtClass на мой класс модели. Я начал с самой простой версии ClassPool.getDefault().get(className); , и она работала нормально. Но только на моей машине. Не работает на сервере. В любом случае, я думаю, что эта версия...
633 просмотров
schedule 31.12.2022

Есть ли разница в скорости *генерируемого кода* между ASM и Javassist?
Я рассматриваю генерацию/модификацию байт-кода во время выполнения для проекта Java. Два важных и до сих пор поддерживаемых API — это ASM и Javassist. ASM является самым быстрым в генерации кода и, вероятно, самым мощным. Но он также намного...
544 просмотров
schedule 16.05.2023

Используйте javassist для изменения полей, которые используют геттеры и сеттеры в конструкторе класса.
Я пытаюсь изменить следующие поля в конструкторе класса с помощью javassist: Label Label1 = new Label(new StringBuilder().append(user.name)); Label Label2 = new Label(new StringBuilder().append(user.time.toString()); Я хочу добавить текст к...
2437 просмотров
schedule 19.02.2023

Javassist использует файл jar
Как добавить файл jar в путь поиска для javassist и заставить его работать правильно? Я пытаюсь изменить файл jar, не распаковывая, а затем перезагружая. import javassist.*; class Injector { public static void main(String[] argv) throws...
3034 просмотров
schedule 01.08.2023

Создание экземпляра объекта из исходного кода, скомпилированного на лету
Я хотел бы знать, есть ли возможность экземпляра класса внешнего файла Например: Oreja oreja_object = getClassFromExternalFile("C:\oreja_file.java"); Спасибо, Кристина.
131 просмотров
schedule 07.09.2022

Javassist: инициализация поля статического класса заданным значением?
Я хотел бы привязать экземпляр объекта к классу, созданному с помощью Javassist. Этот объект считывается из какого-то источника, данные заранее неизвестны. // Create the class. CtClass subClass = pool.makeClass( fullName ); final...
4288 просмотров

Заставить всю арифметику Java использовать strictfp во время выполнения, используя javassist?
Учитывая Java-приложение, которое было написано с учетом производительности (т. е. методы намеренно не объявлены как «strictfp» в исходном коде), возможно ли разрешить пользователям запускать все приложение в режиме strictfp? Похоже, что грубым...
317 просмотров
schedule 27.06.2022

Разобрать классы из jar с помощью javassist
Я нуб в javassist. Кто-нибудь может дать образец, как загружать классы из jar и сохранять их с помощью javassist? jar = new JarFile(fileName); Enumeration<JarEntry> entries = jar.entries(); while (entries.hasMoreElements()) { JarEntry...
1170 просмотров
schedule 29.09.2022

Замена вызова метода java из поля вызовом метода
Я пытаюсь создать насмешливую структуру в java, которая соответствует конкретным требованиям проекта. Сценарий таков, у меня есть метод public String returnRandom(){ String randomString = this.randomGenerator.returnRandom() }...
1513 просмотров

Используя Javassist для регистрации вызовов методов и значений аргументов, как сделать класс регистратора видимым в каждом инструментированном классе?
Инструмент (в этом репозитории ) состоит из 3 классов (указанных ниже). Проблема заключается в том, как сделать мой класс ParaTracer.Logger видимым в каждом инструменте класса I (например, java.util.Random , показанном ниже). Оператор...
5589 просмотров
schedule 31.07.2023

Как определить, что поток начал использовать javassist?
Я должен инструментировать любой заданный код (без прямого изменения данного кода) в начале и в конце каждого потока. Проще говоря, как я могу напечатать что-то в точках входа и выхода любого потока. Как я могу сделать это с помощью javassist?
216 просмотров
schedule 24.04.2023

Javassist, как вызвать метод, определенный в суперклассе
У меня есть класс NFTypeSerializer, и я использую javassist для создания подкласса NFTypeSerializer. CtClass superCc = pool.get(NFTypeSerializer.class.getName()); CtClass cc = pool.makeClass("HotelSerializer", superCc); и я хочу...
499 просмотров
schedule 17.09.2022

Некоторые журналы не печатаются в Javaagent
Привет, я пытаюсь добавить точки отладки в свой javaagent. У меня есть два отдельных класса для метода premain и метода преобразования. Журналы, добавленные для класса агента, печатаются должным образом. Но в классе ClassFileTransformer он печатает...
403 просмотров
schedule 04.08.2022

Как получить доступ к переменной инструментированного метода с помощью javaagent?
Я пытался получить значения из инструментального метода. Использование $1, $0 для получения значений параметров и текущих переменных объекта работает нормально. Но теперь я хотел бы взять значение из объекта, используемого в методе. В качестве...
162 просмотров

Javassist - передать флаги компилятору
У меня быстрый вопрос. Я использую Javassist для добавления методов в классы, а затем перестраиваю JAR-файлы. Javasist использует Javac для компиляции кода. Но после компиляции с помощью Javassist я не могу получить доступ к...
64 просмотров
schedule 22.12.2023

Javassist NotFoundException при получении java.io.Serializable с помощью JDK9
У меня есть следующий код: private static CtClass resolveCtClass(String clazz) throws NotFoundException { ClassPool pool = ClassPool.getDefault(); return pool.get( clazz ); } При работе в JDK8, если этот метод вызывается с использованием...
1274 просмотров
schedule 10.12.2022

Создавайте динамические классы с зарезервированными словами в качестве переменных
Когда-то этот вопрос был задан без удовлетворительного ответа, кроме «зачем вам это делать» на Зарезервированные слова как имена переменных или методов . Я собираюсь задать этот вопрос еще раз и предоставить контекст, который объясняет, почему это...
110 просмотров
schedule 20.03.2022

Печать переменной экземпляра с использованием javasssist
Мне нужно изменить следующий класс во время выполнения, чтобы напечатать значение переменной экземпляра count в конце каждого метода. package test.hib.javaassist; import java.io.IOException; import javassist.CannotCompileException; import...
218 просмотров
schedule 01.03.2024