Редактировать файл класса Java JAD
Вопрос
Мне нужно изменить модификатор доступа одного конструктора в классном файле ... Как мне это сделать с JAD ..
Спасибо всем...
Радж ...
Решение
Решение с JAD:
- Декомпилировать класс с JAD
- Отредактируйте его с вашим любимым редактором
- Сохранить файл
- Составьте его с
javac
Более простое решение:
Class<?> c = Class.forName("fully.qualified.name.of.your.Class");
ctor = c.getConstructor(...argument types here...);
ctor.setAccessible(true);
(Ваша IDE предложит тип для ctor
... в противном случае измените его)
Теперь вы можете вызвать конструктор во время выполнения.
Если вам действительно нужно изменить код байта, посмотрите на Библиотека ASM.
Не связан с StackOverflow