Автозаполнение имен параметров в Eclipse без источника - PullRequest
4 голосов
/ 10 сентября 2009

Я работаю с проприетарной библиотекой, в которой есть JavaDocs, но нет исходного кода. Я прикрепил JavaDocs к jar библиотеки, но я все еще не могу автоматически получить полезные имена параметров (они называются arg0, arg1, arg2 и т.д.). Есть ли способ исправить это без исходного кода?

Ответы [ 5 ]

1 голос
/ 11 сентября 2009

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

Я бы предложил поискать программу, которая может воссоздать исходный jar-файл (только заглушки) из файлов JavaDoc, а затем прикрепить его к проприетарному файлу. Затем Eclipse должен получить необходимую информацию.

1 голос
/ 10 сентября 2009

Имена параметров, как и локальные переменные, удаляются, когда исходный код компилируется в байт-код. Даже если у вас есть элементы @param в Javadoc, они не обязательно будут в любом порядке, а некоторые могут даже отсутствовать. Я не думаю, что есть надежный способ для IDE реконструировать, какой @param сопоставляет какой параметр, используя только Javadoc.

0 голосов
/ 11 сентября 2009

Я думаю, что Eclipse имеет эту функцию с версии 3.2 (см. эта ошибка ). Я только что попробовал с драйвером Oracle JDBC (нет источника, кроме Javadoc). Перед прикреплением javadoc к банке у меня есть только arg1,... для завершения параметра. После присоединения javadoc у меня есть и javadoc, и правильное имя параметра.

Но ... это работает только в том случае, если вы присоединяете javadoc как "javadoc в архиве", и не работает при использовании URL-адреса javadoc.

0 голосов
/ 11 сентября 2009

Я бы порекомендовал установить JD-Eclipse :

Это декомпилятор Java, позволяющий вам заглянуть в классы, у которых нет исходного кода / JavaDoc. Глядя на источник, вы можете определить, для чего используются неназванные параметры.

0 голосов
/ 10 сентября 2009

Нет, имена переменных теряются во время компиляции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...