Eclipse Java Compiler Warnings как задача муравья - PullRequest
7 голосов
/ 10 июня 2009

Я хочу, чтобы предупреждения Java-компилятора eclipse были доступны как задача ant (т.е. без eclipse) - в идеале, как плагины ant - но я хочу, чтобы задача ant круиз-контроля провалилась, если появляется предупреждение eclipse. Для следующих предупреждений

  • Нестатический доступ к статическому элементу

  • Метод с именем конструктора

  • Сериализуемый класс без serialVersionUID

  • Назначение не действует

  • наконец не завершается нормально

  • Использование массива char в конкатенации строк

  • Скрытый блок захвата

  • Неточное совпадение типов для аргументов vararg

  • Доступ к нулевому указателю

  • Параметр типа скрывает другой тип

  • Метод не переопределяет видимый метод пакета

  • Метод интерфейса конфликтует с защищенным методом «Объект»

  • Локальная переменная никогда не читается

  • неиспользованный местный или частный член

  • Непроверенная операция универсального типа

  • Использование необработанного типа

  • Параметр общего типа, объявленный с окончательной привязкой типа

  • Аннотация используется в качестве суперинтерфейса

Я предполагаю, что это означает, что необходимо использовать абстрактное синтаксическое дерево затмений и создать модуль компиляции затмений.

Вопрос в следующем: (1) Это было сделано? (2) Если это не так - тогда дали

org.eclipse.jdt.core.dom.CompilationUnit

объект - как вы (т.е. в примерах кода) получаете предупреждения из этого CompilationUnit?

(Я ЗНАЮ о PMD, контрольном стиле и т. Д. - ни один из них ТОЧНО не соответствует предпочтениям затмения для стиля кодирования. Я хочу задачу муравья, которая точно соответствует стилю кодирования затмения)

1 Ответ

6 голосов
/ 10 июня 2009

Какая версия затмения?

Возможно запустить JDT-компилятор через ant. См:

http://help.eclipse.org/ganymede/topic/org.eclipse.jdt.doc.isv/guide/jdt_api_compile.htm

См. «Использование адаптера ant javac»

Предупреждения и ошибки прикрепляются к ресурсам (таким как файлы или CompilationUnits) в рабочей области Eclipse. Они известны как «маркеры». Может быть проще получать предупреждения в виде маркеров, чем напрямую через процесс компиляции.

Еще один путь, на который стоит обратить внимание, - это запуск сборки PDE, но я думаю, что это излишне для ваших требований, и такие скрипты сборки могут стать очень трудными для поддержки со временем.

...