2010-06-30 3 views

ответ

1

Разбор javadocs, вероятно, лучший выбор, если у вас есть такие.

Если вы этого не сделаете, это источник java. если у вас нет источника java или javadocs, вам не повезло.

1

Я не уверен, понимаю ли вы ваш вопрос ... Было бы легче дать ответ, если бы ваш вопрос был длиннее и что-то рассказывал о том, что вы пытаетесь сделать.

Скомпилированные файлы классов могут содержать имена параметров, но обычно это не так, а для интерфейсов они никогда не делают. См. Мой вопрос Preserving parameter/argument names in compiled java classes и многочисленные ансеры для получения дополнительной информации.

1

Я считаю, что вы можете получить информацию из анализатора аннотаций в javac (apt в JDK5).

Если у вас есть только файлы классов, тогда они должны будут иметь отладочную информацию, включаемую для включения имен параметров. Тогда, я думаю, вы могли бы разбирать файлы классов, скажем, с ASM объекта.

2

найденный проект paranamer может решить эту проблему.

Прецедент:

 
    Method method = Foo.class.getMethod(...); 
    Paranamer paranamer = new CachingParanamer(); 
    String[] parameterNames = paranamer.lookupParameterNames(method) 

Проект дома: http://paranamer.codehaus.org

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