【发布时间】:2010-06-30 16:19:10
【问题描述】:
只解析java源文件?
或者有其他解决方案?
【问题讨论】:
标签: java parameters
只解析java源文件?
或者有其他解决方案?
【问题讨论】:
标签: java parameters
找到的 paranamer 项目可以解决这个问题。
用例:
方法方法 = Foo.class.getMethod(...); 参数参数 paranamer = new CachingParanamer(); String[] parameterNames = paranamer.lookupParameterNames(method)【讨论】:
如果你有这些,解析 javadocs 可能是最好的选择。
如果你不这样做,它是 java 源代码。如果你没有 java 源代码或 javadocs,那你就不走运了。
【讨论】:
我不确定我是否理解您的问题...如果您的问题较长并且可以说明您正在尝试做什么,那么给出答案会更容易。
编译的类文件可能包含参数名称,但通常它们不包含,对于接口,它们从不包含。请参阅我的问题Preserving parameter/argument names in compiled java classes 和众多分析者以了解更多信息。
【讨论】:
我相信您可以从javac(JDK5 中的apt)中的注释解析器中获取信息。
如果您只有类文件,那么它们需要包含调试信息以包含参数名称。然后我猜你可以用 ObjectWeb 的 ASM 来解析类文件。
【讨论】: