Javassist向方法参数添加注释

时间:2013-11-21 10:34:10

标签: parameters annotations javassist

在jboss社区中阅读此answer有关向方法中的参数添加注释的信息。坚持获取参数或用Javassist术语表示属性。

给定XYZ类:

public class XYZ {
   public void changes(String whatever, Integer flag) {
   }
}

使用以下代码:     ClassPool pool = ClassPool.getDefault();     CtClass clazz = pool.get(XYZ.class.getName());

CtMethod m = clazz.getDeclaredMethod("changes");
CtClass[] parameters = m.getParameterTypes();  // shows 2 parameter (one String, other Integer)

AttributeInfo paramAtrributeInfo = m.getMethodInfo().getAttribute("whatever");

paramAttributeInfo 为空。调试时我看到2个属性,但这些属性具有LocalVariableAttribute和LineNumberAttribute的具体调用。

无法获取将参数注释添加到的句柄(属性)。想法?

0 个答案:

没有答案