В конце прошлого месяца JetBrains обновила IntelliJ IDEA до версии 2018.1. Этот выпуск существенно отличается от предыдущего набором улучшений не только для поддерживаемых языков, но и для фреймворков, систем управления версиями, отладчика, компилятора и редактора.
Мы сосредоточимся на некоторых наиболее важных моментах, представленных обновлением. Ну а если вы хотите увидеть полный список — переходите в ссылке.
Что нового в IntelliJ IDEA 2018.1
Java:
- Автодополнение кода в цепочках вызовов Stream API теперь поддерживает приведение типов и предлагает вариант дополнения в соответствии с имеющемся вызовом filter(String.class :: isInstance), автоматически присваивая ему тип;
- Улучшилось постфиксное автодополнение кода, появилась возможность создавать собственные шаблоны Java, а также изменять и переименовывать предопределенные шаблоны Java в разделе настроек Preferences | Editor | General | Postfix Completion.
- IDE теперь отслеживает взаимосвязь между переменными типа “greater than” и “less than” и выявляет, когда условие всегда истинно (true) или ложно (false) во всевозможных ветках кода при сравнении переменных;
- Java Inspections & Quick-fixes: новая версия включает в себя инспекции и быстрые исправления, предназначенные специально для Java 9 и предупреждает об очевидно избыточных вызовах close() и предоставляет быстрое исправление (quick-fix) для их удаления.
- Если существует несколько различных вариантов устранения возможных ошибок в выбранной области, IntelliJ IDEA группирует их всех по типу. Для этого достаточно нажать кнопку Fix partially в окне «Результаты проверки»;
- IntelliJ IDEA 2018.1 поддерживает аннотации JUnit 5 @Tag, их можно включать в область теста, а также в помеченные классы и методы;
- Появилась возможность создания тестового класса с помощью добавления приставки «Test» не только в конец названия класса, но и в его начало.
Отладчик JVM
- Вывод трассировки стека для точек прерывания в консоль. IDE также позволяет видеть в журнале консоли трассировки стека для нескольких точек прерывания одновременно.
- Возможность копирования трассировки стека для текущего потока посредством нового действия Copy Stack, доступного из контекстного меню фрейма.
Компилятор Java
- Добавлен новый чекбокс Use --release option for cross-compilation (Java 9 и более поздние версии) на странице компилятора Java Compiler;
- Появилась возможность использования определенной версии компилятора ECJ.
Редактор
- Доступно добавление к коду внешних аннотаций, даже когда прямая аннотация исходного кода невозможна (например, в случае с классами библиотек). Настроить аннотации можно в файлах annotations.xml, хранящихся за пределами исходного кода.
- IDE показывает автоматически выведенные аннотации непосредственно в исходном коде.
- Если свернутые участки кода содержат ошибки или предупреждения, то они выделяются и окрашиваются цветом, соответствующим статусу валидации.
- IDE также подсвечивает свернутые участки кода при поиске по текущему файлу, если они содержат совпадения.
- Возможность перехода к следующему или предыдущему вхождению с помощью сочетания «Alt + Прокрутка вниз» и «Alt + Прокрутка вверх».
Конфигурация проекта
- Появилась возможность изменять полные имена нескольких модулей одновременно, используя новое действие Change Module Names…, доступное из контекстного меню диалога Project Structure.
- Добавлена новая опция Include dependencies with “Provided” scope, что позволяет добавлять «provided»-зависимости в classpath.
Поиск и замена
- Возможность предварительного просмотра результатов замены регулярных выражений в окне Replace in Path;
- Усовершенствования структурного поиска. Теперь в диалоге Structural Search можно создать собственный шаблон поиска или выбрать один из существующих.
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ