Есть ли инструмент статического анализа, который может обеспечить постоянное использование аннотации @Override, которые могут выполняться за пределами среды IDE? CheckStyle имеет проверку MissingOverride, но применяется только к методам, использующим тег @inheritDoc Javadoc. Я ищу инструмент, который можно запустить в новой конфигурации сборки на машине с непрерывной интеграцией.
Как обеспечить использование аннотации @Override?
Ответ 1
Один из способов - использовать бегун TeamCity "Инспекция". Я не уверен, что он действительно подходит для работы вне среды IDE, поскольку он настроен в IntelliJ, и он работает, запустив IntelliJ в режиме безглавых на стороне TeamCity.
Ответ 2
Я использую Sonar, который дает мне предупреждения, но, самое главное, я использую eclipse (и моя команда), и я установил опцию "add missing @Overrides" для сохранения действия.
Ответ 3
Как насчет PMD или Findbugs? PMD позволяет вам даже написать собственное правило (если оно не доступно в наборе правил по умолчанию).
http://pmd.sourceforge.net/howtowritearule.html
НТН
Ответ 4
Ошибка Prone имеет шаблон MissingOverride. Похоже, что errorprone оценивается во время компиляции. По умолчанию это предупреждение, но я настроил его как ошибку.
Ответ 5
В IntelliJ 2017 перейдите в Настройки → Редактор → Инспекции → Отсутствует аннотация @Override
пример изображения 0 (недостаточно репутации для публикации изображений)