Внедрение кода в метод из строки
Подскажите, как можно внедрить код (считанный из строки) в нужный мне метод. Создал Proxy объект, но дальше затык, заранее спасибо!
private Object getProxyObject(String textMethod) {
final MyClassLoader classLoader = new MyClassLoader();
Class[] interfaces = {Worker.class};
InvocationHandler myHandler = new InvocationHandler() {
SomeClass someClass = new SomeClass();
@Override
public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
//Строка с новым кодом для метода, должна внедряться тут? textMethod
//method.invoke(someClass,args);
return null;
}
};
return Proxy.newProxyInstance(classLoader,interfaces,myHandler);
}
}
Ответы (1 шт):
Автор решения: Konstantin_SH
→ Ссылка
Мне, кажется надо поискать библиотеки типа Spoon. Там есть раздел "Code Transformation", который должен Вам помочь.
Еще есть JavaPoet Нашел по нему легкое введение. Надеюсь поможет.