Ответ 1
Причина, по которой запрет предупреждений на уровне пакета недопустим, объяснялся в ответе на старый отчет об ошибке (Status - Closed, Not Fix): Разрешить SuppressWarnings указывать на уровне пакета.
Предупреждения фактически указывают на потенциальные проблемы в сгенерированный код.
В настоящее время SuppressWarnings обладают желательным свойством влияет только на лексически вложенный код. Это означает, что вы может сразу увидеть, может ли предупреждение быть подавлено в кода, который вы читаете.
Это предложение нарушит это свойство, чтобы решить необычный проблема, которая в большинстве случаев может быть решена.
В этом ответе также предлагается несколько работ.
скомпилировать сгенерированный код самостоятельно, используя -source 1.4 и -target 5.
запросить обновленную версию javacc, которая либо использует suppresswarnings или не генерирует код, который вызывает предупреждения.
Я думаю, что первое предложение, поместив сгенерированный код в его собственный проект, должно работать на вас. Второе предложение выглядит как более специфичное для проблемы в отчете об ошибке. Я не знаю, используете ли вы javacc или нет.