Ответ 1
Резюме:
Получение вышеуказанного совета для работы не было интуитивным для меня. Я также не понял фактическое решение. В файле package-info.java:
а. поместить аннотацию ВЫШЕ объявить пакет
б. введите импорт аннотации NonNullByDefault ПОСЛЕ объявления пакета
Детали:
Я не знаю, являюсь ли я единственным человеком, который прочитал вышеупомянутые ответы и не мог понять, как это сделать. Поэтому, чтобы быть более ясным, здесь (неочевидные или интуитивные) шаги, которые я предпринял, чтобы заставить это, наконец, работать в Eclipse-Juno:
- В Проводнике пакетов перейдите к корневому пакету Java, в котором отображается сообщение с предупреждением (или ошибкой), начинающееся с " Аннотации аннулирования по умолчанию для пакета не указаны..." - для этого примера, предположим, что имя пакета "org.public_domain"
- В пакете Java активируйте меню правой кнопки мыши и выберите опцию " Новый → Пакет" - да, я знаю, что ваш пакет уже существует, рассмотрите его как eclipse idiosyncrasy - он не собирается сделать что-либо с вашим существующим пакетом.
- Когда появится диалоговое окно " Новый Java-пакет", установите флажок " Создать package-info.java" и нажмите "Готово"
-
Теперь у вашего редактора Java будет новый файл под названием " package-info.java" со следующим содержимым:
/** * */ /** * @author xyz * */ package org.public_domain;
-
Теперь измените содержимое файла таким образом:
/** * */ /** * @author xyz * */ @NonNullByDefault package org.public_domain; import org.eclipse.jdt.annotation.NonNullByDefault;
... или вот так...
/** * */ /** * @author xyz * */ @org.eclipse.jdt.annotation.NonNullByDefault package org.public_domain;
-
Наслаждайтесь удивительностью, которая является eclipse @NonNullByDefault
Моя задача заключалась в том, что я должен был поместить аннотацию ВЫШЕ объявить пакет. И чтобы поместить комментарий аннотации NonNullByDefault ПОСЛЕ объявления пакета. Для меня это было неинтуитивно.
Надеюсь, это спасет кого-то еще, когда я закончил гореть, преследуя этот конкретный путь.