Почему файл package-info.java влияет на обработку аннотаций?

Добавление файла package-info.java в проект приводит к тому, что процессоры-аннотации создают разные выходные данные.

Я не понимаю, почему это происходит. Я думаю, что добавление файла package-info.java не должно влиять на мою сборку, потому что он не содержит никаких причудливых вещей (таких как аннотации и т. Д.). Он содержит только простейшее объявление пакета:

package com.example;

Мне удалось создать минимальный проект, чтобы воспроизвести проблему с javac только. В проекте слишком много кода для публикации здесь в Stackru, поэтому я опубликовал проект на GitLab: включая полный исходный код и очень подробный файл README.

Есть идеи, почему это происходит или в чем причина? Это может быть ошибка Java?

Заметки

  • проект использует файл jar color-1.0-SNAPSHOT.jar как библиотека, которая:
    • использует тот же процессор аннотаций
    • использует один и тот же пакет (в реальном проекте мы должны использовать одно и то же имя пакета в разных модулях, чтобы использовать java package-scope)
  • проблема также может быть воспроизведена в проекте Android с другим процессором аннотации: см. этот вопрос SO

0 ответов

Другие вопросы по тегам