Я пытаюсь добавить аннотации уровня пакета, но у меня нет подсказки о том, как это сделать. Примеры приветствуются.
Как добавить аннотации уровня пакета или отредактировать файл package-info.java?
Ответ 1
Резюме из статьи здесь
В package-info.java:
@PackageLevelAnnotation
package blammy; // package with a package level annotation.
import blammy.annotation.PackageLevelAnnotation;
В PackageLevelAnnotation.java
package blammy.annotation;
@Retention(RetentionPolicy.CLASS)
@Target(ElementType.PACKAGE)
public @interface PackageLevelAnnotation
{
// stuff as required.
}
Изменить: больше информации об уровне пакета. Вот ссылка на главу пакета в Java Language Spec: пакеты
Ответ 2
В eclipse
Так как package-info.java не является допустимым идентификатором для класса, он не может быть создан как класс в Eclipse.
Я обнаружил, что при создании нового пакета есть флажок, чтобы проверить, хотите ли вы package-info.java.
Чтобы создать файл package-info.java в существующем пакете:
- Щелкните правой кнопкой мыши пакет, в котором вы хотите установить package-info.java.
- Выберите New- > Package.
- Установите флажок Create package-info.java.
- Нажмите "Готово".
Ответ 3
Откройте проводник, перейдите в папку src/your package.
щелкните правой кнопкой мыши → Создать новый текстовый файл: назовите его package-info.java.
Вернитесь к затмению и отредактируйте и добавьте желаемый контент.
Ответ 4
package-info.java
package-info.java
- это файл Java, который можно добавить в любой исходный пакет Java. Его целью является предоставление места для документации уровня пакета и аннотаций уровня пакета.
Просто создайте файл package-info.java
. Добавьте объявление пакета в файл. Фактически, единственное, что должен содержать файл package-info.java, - это объявление пакета.
Пример минимального информационного файла пакета:
package com.example.myapp.backend.data;
Пример аннотации на уровне пакета, @ParametersAreNonnullByDefault
:
@ParametersAreNonnullByDefault
package com.example.myapp.backend.data;
import javax.annotation.ParametersAreNonnullByDefault;
Для получения дополнительной информации см. спецификации Java, в спецификации языка Java®, раздел 7.4.1 Именованные пакеты.