Существует распределение OSX IEs4 Linux, названного ies4osx, который хорошо работал для меня без любой конфигурации.
Это зависит от вашей IDE или компилятора.
Вот список для Eclipse Galileo:
- все для подавления всех предупреждений
- бокс для подавления предупреждений относительно операций упаковки / распаковки
- cast для подавления предупреждений относительно операций приведения
- dep-ann для подавления предупреждений относительно устаревшей аннотации
- устаревшей для подавить предупреждения, относящиеся к устареванию
- , провал , чтобы подавить предупреждения, касающиеся отсутствия разрывов в коммутаторе операторы
- finally для подавления предупреждений относительно блока finally, которые не return
- hiding для подавления предупреждений относительно локальных переменных, которые скрывают переменную
- incomplete-switch для подавления предупреждений относительно отсутствующих записей в операторе switch (enum case)
- nls для подавления предупреждений относительно строковых литералов, отличных от nls
- null для подавления предупреждений относительно нулевого анализа
- ограничение для подавления предупреждений относительно к использованию обескураженных или запрещенные ссылки
- серийный номер для подавления предупреждений об отсутствии serialVersionUID поле для сериализуемого класса
- статического доступа для подавления предупреждений относительно неправильного статического доступ
- синтетический доступ для подавления предупреждений относительно неоптимизированных доступ из внутренних классов
- unchecked для подавления предупреждений относительно непроверенных операций
- unqualified-field-access для подавления предупреждений относительно поля доступ неквалифицированный
- неиспользуемый для подавления предупреждений относительно неиспользуемого кода
Список для Indigo добавляет:
- javadoc для подавления предупреждений относительно предупреждений javadoc
- rawtypes для подавления предупреждения относительно использования необработанных типов
- static-method для подавления предупреждений относительно методов, которые могут быть объявлены как static
- super для подавления предупреждений относительно переопределения метода без супервызовов
List для Juno добавляет:
- ресурс для подавления предупреждений относительно использования ресурсов типа Closeable
- sync-override для подавления предупреждений из-за отсутствия синхронизации при переопределении синхронизированного метода
Kepler и Luna используют тот же список токенов, что и Juno ( list ).
Другие будут похожи, но будут отличаться.
Список зависит от компилятора. Но вот значения, поддерживаемые в Eclipse :
- allDeprecation устаревание, даже внутри устаревшего кода
- allJavadoc недопустимый или отсутствующий javadoc
- assertIdentifier вхождение assert используется как идентификатор
- бокс преобразование автобокса
- charConcat , когда массив символов используется в конкатенации строк без явного преобразования в строку
- conditionAssign возможное случайное логическое присвоение
- constructorName метод с имя конструктора
- dep-ann отсутствует @Deprecated аннотация
- устаревание использование устаревшего типа или члена вне устаревшего кода
- препятствовало использованию типов, соответствующих запрещенному правилу доступа
- emptyBlock недокументированному пустому блоку
- enumSwitch , неполный переключатель неполный переключатель перечисления
- провал возможный случай провала
- fieldHiding поле, скрывающее другую переменную
- finalBound параметр типа с конечной границей
- finally finally блок не завершается нормально
- запрещено использование типов, соответствующих правилу запрещенного доступа
- скрытие макроса для fieldHiding, localHiding,typeHiding и maskedCatchBlock
- IndirectStatic косвенная ссылка на статический член
- intfAnnotation тип аннотации, используемый в качестве суперинтерфейса
- intfNonInherited интерфейс совместимость ненаследуемых методов
- javadoc недопустимый javadoc
- localHiding локальная переменная, скрывающая другую переменную
- maskedCatchBlocks скрытый блок перехвата
- nls строковые литералы, отличные от nls (отсутствие тегов // $ NON-NLS-)
- noEffectAssign присвоение без эффекта
- null потенциально отсутствует или избыточная проверка нуля
- nullDereference отсутствует проверка нуля
- over-ann отсутствует аннотация @Override
- paramAssign присвоение параметру
- pkgDefaultMethod попытка переопределить метод пакета по умолчанию
- raw использование a необработанного типа(вместо параметризованного типа)
- точка с запятой ненужная точка с запятой или пустой оператор
- серийный отсутствует serialVersionUID
- specialParamHiding конструктор или параметр установки, скрывающий другое поле
- статический доступ для IndirectStatic и staticReceiver
- staticReceiver , если нестатический приемник используется для получения статического поля или вызова статического метода
- super , переопределяющего метод без выполнения супер-вызова
- suppress включить @SuppressWarnings
- синтетический доступ,синтетический доступ при выполнении синтетического доступа для задач внутреннего класса
- включить поддержку тегов задач в исходном коде
- typeHiding параметр типа, скрывающий другой тип
- unchecked unchecked type operation
- излишний Эльс излишний, еще пункт
- unqualified-field-access, unqualifiedField unqualified
- unchecked Дайте более подробную информацию о неконтролируемых предупреждениях преобразования, которые требуются спецификацией языка Java.
- serial Предупредить об отсутствии определений serialVersionUID для сериализуемых классов.
- finally Предупреждать о предложениях finally, которые не могут завершиться нормально.
- провал Проверяйте блоки переключателей на предмет провалов и отправляйте предупреждающее сообщение обо всех обнаруженных.
- путь Проверить несуществующий путь в путях среды (например, путь к классам).
Последний доступный javac (1.6.0_13) для Mac имеет следующие поддерживаемые предупреждения:
- все
- cast
- устаревание
- divzero
- пусто
- не отмечено
- падение
- путь
- серийный
- окончательно
- переопределяет
Разрешены все значения (нераспознанные игнорируются). Список распознаваемых зависит от компилятора.
В Учебных пособиях по Java снятые отметки
и устаревшие
перечислены как два предупреждения, требуемых Спецификацией языка Java, поэтому они должны быть действительными для всех компиляторов:
Каждое предупреждение компилятора относится к определенной категории. В Спецификации языка Java перечислены две категории: устаревшие и непроверенные.
Конкретные разделы внутри Спецификации языка Java , где они определены, не согласованы между версиями. В спецификации Java SE 8 снятые отметки
и устаревшие
перечислены как предупреждения компилятора в разделах 9.6. 4.5. @SuppressWarnings и 9.6.4.6 @Deprecated , соответственно.
Для компилятора Sun запуск javac -X
дает список всех значений, распознаваемых этой версией. Для версии 1.5.0_17 список выглядит следующим образом: