Как создать документацию JavaDoc для классов в a.jar файл, для которого у меня нет исходного кода?

Я хочу создать API для всех классов, которые есть в моем приложении Java 1.6. Он должен выглядеть как обычная документация Java 1.5 API.

У меня нет исходного кода. У меня есть файлы классов в файле jar.

4 ответов


вы не можете создавать Javadoc из банок файлов классов, даже рудиментарного Javadoc. Вы можете создавать Javadoc только из исходных файлов, потому что именно там живет Javadoc.


Я не использовал его, но этот проект с открытым исходным кодом утверждает, что создает документы из java class или JAR-файлов:

http://classdoc.sourceforge.net/


кто меняет мой вопрос ? У меня нет исходного кода. У меня есть файлы классов в файле jar. Purushotham 47 мин. назад

У вас нет исходных файлов? Ну, тогда тебе, наверное, не повезло. В огромной базе данных Eclipse может быть какой-то непонятный плагин, который может сделать это из файлов классов, но даже тогда вы получите только подписи методов, а не комментарии.


однако, если это ваш проект, что вы написали затем вы можете создать JavaDoc в своей IDE. Для Eclipse do Project > создать JavaDoc. В NetBeans щелкните правой кнопкой мыши проект и выберите Создать JavaDoc.

Если вы хотите включить свои зависимости, то это очень плохая идея. Всегда ссылайтесь на JavaDocs ваших зависимостей, никогда не включайте его в свой. Если не для потери рассудка при виде массивной стены классов из большой чрезмерно рамки X, это просто держать их отдельно. Если я хочу прочитать JavaDoc на вашем проекте, я хотите прочитать его только на своем проекте, а не на slf4j.


можно использовать javap команда для любого класса в пути к классам. Это не приведет к созданию файлов Javadoc, но позволит вам увидеть, что предоставляет класс.

Ex...

javap java.lang.String производит следующий вывод

public final class java.lang.String implements java.io.Serializable, java.lang.Comparable<java.lang.String>, java.lang.CharSequence {
  public static final java.util.Comparator<java.lang.String> CASE_INSENSITIVE_ORDER;
  public java.lang.String();
  public java.lang.String(java.lang.String);
  public java.lang.String(char[]);
  public java.lang.String(char[], int, int);

...и после нескольких конструкторов есть и другие методы...

  public int length();
  public boolean isEmpty();
  public char charAt(int);
  public int codePointAt(int);

и вы можете показать вам и другие вещи, но это, вероятно, наиболее полезно.

не совсем то, что вы ищете Для, но если у вас просто есть баночка с кучей классов, это может быть ваш лучший вариант.