Простой тестовый пример:
Object o = new ArrayList<String>();
var s = (List<String>) o;
Этот код не нравится javac по причине неконтролируемого приведения. Насколько я могу судить, нет опции командной строки, чтобы заставить javac замолчать; единственный способ сделать это - добавить аннотацию в сам код:
Object o = new ArrayList<String>();
@SuppressWarnings("unchecked")
var s = (List<String>) o;
но эта версия не нравится Intellij, который считает, что подавление избыточно. Для большинства видов предупреждений Intellij предоставляет интерактивный способ отключить предупреждение, но не этот.
Какой лучший способ заставить двоих договориться о какой-то версии кода? Идеальным было бы сделать способ порадовать javac первой версией, потому что я придерживался современной идеи, что файлы IDE не проверяются в управлении версиями; определение проекта Maven является окончательным, и определение IDE-проекта создается из него при необходимости; это означает, что каждый может внести свои собственные пользовательские изменения в настройки IDE, но было бы гораздо лучше избежать конкретных настроек проекта в настройках IDE.