2010-09-05 2 views
211

При попытке создать пакетный комментарий Javadoc, какой предпочтительный метод? Чем ты занимаешься?Javadoc: package.html или package-info.java

package-info.java

  • Pros
    • Новые
  • Против
    • Злоупотребление класса - Классы для кода, а не только для комментариев

package.html

  • Pros
    • расширение HTML означает, что его не код
    • Подсветка синтаксиса в/текстовых редакторов среды IDE
  • Cons
    • Нет?

Для меня, я всегда Package.html. Но мне интересно, правильный ли выбор.

+42

'package-info.java' может содержать аннотации [package] - это не обязательно все документы API. –

+46

Я бы не квалифицировал package-info.java как злоупотребление классом. Это исходный файл java (имеет расширение «.java»), но не является файлом класса, поскольку он не содержит объявления класса. И, фактически, он не может содержать объявление класса, потому что «package-info» не является именем юридического класса. – Scrubbie

+18

Другой причиной использования package-info.java вместо package.html может быть то, что .java не подразумевает конкретный формат вывода документации. Например, вы можете вывести javadoc как LaTeX или как файл PDF. В зависимости от реализации компилятора javadoc это может вызвать проблемы в случае .html. – honeyp0t

ответ

255

package-info.java: "Этот файл является новым в JDK 5.0, и предпочтительнее package.html." - javadoc - The Java API Documentation Generator

Добавление: Большая разница, как представляется, пакет аннотаций. Есть немного больше на пути к обоснованию в 7.4 Package Declarations.

Addendum: упоминается также функция аннотации here и here.

Addendum: См. Также Declarative Programming in Java: Package-Level Annotations.

+3

Любая конкретная причина, почему его предпочитают? – TheLQ

+2

@TheLQ: Я угадываю аннотации пакетов, поскольку у компилятора есть больше информации для работы, больше выше. – trashgod

+3

Аннотации пакетов для меня новы, и, по-видимому, это хорошая причина для package-info.java из-за его объема. – stacker

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