Intellij и Javac не согласны на непроверенный актерский состав - PullRequest
1 голос
/ 08 июля 2019

Простой тестовый пример:

    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.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...