Как получить имя поля / объекта в методах с помощью javassist
Я могу получить поля имени в классе
ClassPool cp = ClassPool.getDefault();
CtClass cc = cp.get("other.Main");
for (CtField ctField : cc.getFields()) {
ctField.getFieldInfo().toString()
}
, но я не знаю, как получить локальные поля имени в методе .
Я хочу получить поля имени / объекта и параметры для объекта Stuff и Car
public class Main {
int id;
String field1;
public static void main(String[] args) {
int k;
Stuff stuff = new Stuff(1,"I' am");
Car car = new Car();
stuff.run();
}
}
Я пробовал
CtMethod cm = cc.getDeclaredMethod("main");
cm.instrument(
new ExprEditor() {
public void edit(FieldAccess m)
throws CannotCompileException {
System.out.println(m.getFieldName());
}
});
, но это не работает i не вижу getFieldName и ошибок не вижу