2012-06-01 3 views
0

Есть ли какой-нибудь способ, чтобы заменить вызов какForce прокси с BCEL в Java

Socket s = new Socket(Proxy.NO_PROXY); 

с

Socket s = new Socket(); 

с использованием BCEL, потому что я не могу понять, каким образом. Я понимаю, что это связано с изменением InstructionList, но я не знаю, как сканировать его, и я не знаю, какие коды операций искать.

ответ

0

Вы можете уйти с гораздо более короткой кривой обучения, если используете AspectJ или аналогичные инструменты высокого уровня.

Для низкоуровневой модификации байт-кода вы не сможете обойтись без изучения Java-кодов. Хорошей отправной точкой является JVM Specification. Кроме того, BCEL недостаточно хорошо документирован, и если вы будете гибки при выборе низкого уровня, я бы предложил использовать структуру ASM. Вот соответствующий учебник по implementing simple bytecode transformation с ASM. Он основан на более старой версии ASM, но идеи все те же.

+0

Я гибкий проблема, я начал с BCEL для этого проекта ... и я действительно не хочу переписывать свой код. – ILOVEPIE

Смежные вопросы