Доступ к информации о библиотеках Java программно - PullRequest
0 голосов
/ 26 января 2012

Я бы хотел написать игрушечную IDE для Java, поэтому я задаю вопрос об одной конкретной вещи, которая, как я надеюсь, может помочь мне начать работу.текст там.Вот, например:

import java.util.List;

Теперь мне нужен способ отправить строку «java.util.List» в метод, который возвращает мне всю необходимую информацию, включая документ JavaDoc.

Так есть ли какой-нибудь инструмент, который может установить classpath с библиотеками, который будет анализировать каждую строку, которую я отправляю, и пытаться найти, есть ли какой-либо класс / интерфейс с документацией для возврата?

Ответы [ 4 ]

1 голос
/ 26 января 2012

В библиотеках будут файлы классов, в которых не будет javadocs .. Так что не ясно, что вы хотите сделать.

Для анализа и извлечения информации из файлов классов существует множество инструментов разработки байт-кода.Например, asm или bcel . Javassist позволяет обрабатывать как исходный, так и байтовый код, поэтому может быть близок к тому, что вам нужно.

1 голос
/ 26 января 2012

Вы можете использовать html parser для получения javadoc и другой информации из Интернета, используя полный путь к классу (включая имена пакетов для построения правильного URL для каждого класса). Это, конечно, будет зависеть от используемой вами версии Java.
Вы также можете использовать инструмент javadoc из Java, чтобы сгенерировать необходимую документацию из исходных файлов Java (которые можно загрузить из Интернета). Исходный код инструмента также может помочь вам. Смотри http://java.sun.com/j2se/javadoc/faq/#developingwithjavadoc
Наконец, если вам нужна информация, основанная на типах среды выполнения в вашей программе, вы можете проверить возможности отражение .

1 голос
/ 26 января 2012

Так есть ли какой-нибудь инструмент, который может настроить classpath с библиотеками, который будет анализировать каждую строку, которую я посылаю, и пытаться найти, есть ли какой-либо класс / интерфейс с документацией для возврата?

AFAIK, нет.Нет такого автономного инструмента или библиотеки.Вам нужно будет реализовать это самостоятельно.(Не ожидайте, что написание Java IDE просто ... даже «игрушечного».)

0 голосов
/ 26 января 2012

Сначала вам нужно знать Как напечатать импортированные библиотеки Java? .Затем загрузите документацию по java API здесь .Как только вы найдете импортированные библиотеки, откройте inputStream, чтобы прочитать соответствующий HTML-файл. Осторожно! Эта техника будет работать только при импорте из jdk.

...