Что нового в IntelliJ IDEA 2021.2

В версии IntelliJ IDEA 2021.2 появился анализ кода Java в масштабе всего проекта, новые действия, выполняемые при сохранении изменений, новый интерфейс для управления зависимостями Maven и Gradle и другие полезные возможности. Подробный рассказ о новых функциях — ниже, а также в нашем видеообзоре.

Главные изменения

Анализ кода Java в масштабе всего проекта
Ultimate

В этой версии мы реализовали новую функцию для отслеживания ошибок в масштабе всего проекта перед компиляцией. При нажатии на соответствующий значок в окне Problems запускается проверка всех изменений кода. После завершения этого процесса IDE отображает все найденные ошибки, в том числе те, которые можно обнаружить только при сканировании всего проекта целиком.

Функция работает с проектами небольшого и среднего размера.

Действия при сохранении кода

Мы добавили ряд действий, которые могут выполняться при сохранении изменений в проекте, в том числе форматирование кода и оптимизация импорта. Они собраны вместе в меню Preferences / Settings | Tools | Actions on Save. Их удобно настроить, поставив нужные флажки. Если нужно задать более точные параметры для какого-то действия, наведите на него курсор и нажмите на ссылку для настройки.

Новый интерфейс для управления зависимостями Maven и Gradle

Both IntelliJ IDEA Community Edition and IntelliJ IDEA Ultimate now include Package Search, a powerful new interface to manage your project dependencies. Пакетный поиск позволяет находить и добавлять новые зависимости, а также управлять существующими. Новый плагин позволяет посмотреть информацию обо всех зависимостях, в том числе проверить наличие обновлений.

Кроме того, мы добавили инспекцию, которая позволяет применять обновления прямо в редакторе.

В настоящее время пакетный поиск работает с проектами Maven и Gradle. Кроме того, в EAP-версиях плагина Scala есть экспериментальная поддержка проектов sbt. Подробнее об этом можно прочитать здесь.

Редактор

Улучшенные описания инспекций и быстрых исправлений

Улучшенные описания инспекций и быстрых исправлений

Инспекции и быстрые исправления не просто удобны для написания кода — они еще и подробно описаны. В обновленных описаниях объясняется, какие изменения предлагает соответствующая инспекция и почему. Для некоторых инспекций приведены примеры использования. Подробная информация — в меню Preferences/Settings | Editor | Inspections.

Структурный вид диаграмм

Структурный вид диаграмм

Мы сделали диаграммы более информативными: теперь их можно просматривать в режиме Structure, который представляет собой схему диаграммы с возможностью предпросмотра выбранного блока и его соседей. Новый режим просмотра Structure поддерживает масштабирование, перемещение полотна, режим лупы, изменение структуры и экспорт в виде изображения.

Указание нескольких вариантов года регистрации авторских прав

Теперь в уведомление об авторских правах на проект можно включить как год создания проекта, так и год текущей версии. Обновленный шаблон с двумя датами доступен в меню Preferences/Settings | Editor | Copyright | Copyright profile.

Улучшенная поддержка Markdown

В IntelliJ IDEA 2021.2 внесены изменения в поддержку Markdown. Теперь можно конвертировать файлы .md в различные форматы (.html, .docx, .pdf) и наоборот. Кроме того, мы устранили проблему с форматированием списков, и теперь действия Enter, (Shift) Tab и Reformat работают корректно. Можно изменить размер изображения, добавить описание и перетащить изображение в нужное место вместо того, чтобы писать HTML-тег с путем к файлу. Кроме того, новая легкая панель инструментов, на которой представлены все самые частые действия, будет появляться только при выделении кода, чтобы не отвлекать вас от важных задач.

Взаимодействие с IDE

Быстрый доступ к проектам Eclipse

Быстрый доступ к проектам Eclipse

IntelliJ IDEA может самостоятельно находить проекты Eclipse, сохраненные на локальной машине, и предлагать открыть их с начального экрана. Когда вы запускаете IDE в первый раз, выберите вариант Open existing Eclipse projects. Если вы этого не сделаете, автоматически обнаруженные проекты Eclipse появятся в списке недавних проектов выделенного узла.

Дополнительные настройки

Дополнительные настройки

Настроить параметры IntelliJ IDEA для конкретных сценариев использования можно в разделе Advanced Settings в меню Preferences/Settings. Например, можно добавить левое поле в режиме Distraction-free или сделать так, чтобы курсор двигался вниз, когда вы используете действие Comment with Line Comment.

Упорядочивание окон с помощью перетаскивания

Упорядочивание окон с помощью перетаскивания

Теперь нужное окно можно просто перетащить в удобное место — как внутри основного окна IDE, так и в отдельное окно. Просто нажмите на заголовок окна и перетащите в любую выделенную область.

Автоматическая очистка кэша и журналов

Автоматическая очистка кэша и журналов

IntelliJ IDEA автоматически очищает директории кэша и журналов, обновлявшиеся более 180 дней назад. Этот процесс не затрагивает настройки системы и директории плагинов. Процесс можно запустить вручную в меню Help | Delete Leftover IDE Directories.

Уведомления об отсутствующих плагинах

Уведомления об отсутствующих плагинах

Если в проекте используется фреймворк, который работает в IntelliJ IDEA через плагин, IDE предупредит вас об этом и предложит включить соответствующий плагин прямо из уведомления.

Новый вариант навигации в Preferences/Settings

Новый вариант навигации в Preferences/Settings

Мы упростили навигацию в окне настроек Preferences/Settings: в правом верхнем углу окна появились стрелки. Они позволяют быстро перемещаться между открытыми разделами.

Уведомления об обновлениях из JetBrains Toolbox App

Уведомления об обновлениях из JetBrains Toolbox App

Когда в JetBrains Toolbox App появится обновление какого-либо продукта, IDE сообщит вам об этом. Скачать и установить новую версию можно будет прямо из IntelliJ IDEA. Эта функция работает с JetBrains Toolbox App 1.20.8804 и более поздних версий.

Быстрый доступ к режиму экономии электроэнергии

Быстрый доступ к режиму экономии электроэнергии

Чтобы продлить время работы ноутбука от аккумулятора, можно включить в IntelliJ IDEA режим экономии электроэнергии. Мы упростили доступ к этому режиму: управлять им можно из строки состояния. Щелкните на ней правой кнопкой мыши и выберите Power Save Mode: в правом нижнем углу основного окна IDE появится новый значок. Чтобы включить или выключить режим, щелкните по этому значку.

Обновления режима специальных возможностей

В IntelliJ IDEA 2021.2 появились новые функции для написания кода со включенным инструментом чтения с экрана на macOS. Теперь можно услышать доступные предложения по автодополнению кода, выбранный пункт в поле со списком и весь список целиком, а также результаты поиска при использовании функции Search Everywhere.

Улучшенная отзывчивость интерфейса

Мы продолжаем улучшать отзывчивость интерфейса и бороться с зависаниями. В новой версии нам удалось справиться с блокировкой интерфейса при использовании контекстных меню, всплывающих окон и панелей инструментов. Кроме того, мы вынесли из потока пользовательского интерфейса некоторые операции, требующие индексации, и это должно помочь избавиться от зависания в ряде ситуаций.

Java

Настройки цвета в зависимости от видимости

Настройки цвета в зависимости от видимости

Теперь различать публичные (public), защищенные (protected) и частные (private) методы, поля и классы Java будет проще, если настроить для них определенные цвета. Это можно сделать в меню Preferences/Settings | Editor | Color Scheme, развернув узел Visibility.

Новый мастер проекта JavaFX

Новый мастер проекта JavaFX

Настроить новый проект JavaFX стало проще. Всего за два шага можно добавить SDK проекта, язык, нужную систему сборки, тестовый фреймворк и часто используемые библиотеки с короткими описаниями.

Новые инспекции

Для отдельных сценариев использования при анализе потока данных мы добавили несколько новых инспекций: например, для отслеживания диапазона чисел с плавающей точкой или размера коллекции для методов обновления. Новая инспекция Write-only object предупреждает, когда вы изменяете объект, но не отправляет ему запросы относительно пользовательских классов, определенных в проекте и стандартной библиотеке.

Подробнее о других новых и улучшенных инспекциях читайте в нашем блоге.

Kotlin

Автодополнение кода на основе машинного обучения

Автодополнение кода на основе машинного обучения

Начиная с версии 2021.2, функция автодополнения кода Kotlin по умолчанию использует механизм машинного обучения. Предложения подбираются более аккуратно, поскольку IDE учитывает выбор тысяч реальных пользователей в схожих ситуациях. Настроить автодополнение кода с использованием машинного обучения можно здесь: Preferences/Settings | Editor | Code Completion.

Выполнение тестов до завершения анализа кода

Выполнение тестов до завершения анализа кода

Раньше выполнять тесты можно было только после того, как завершится анализ кода. В новой версии их можно запустить сразу после открытия файла, нажав на значок Run test в поле редактора.

Обновления отладчика

Обновления отладчика

Мы внесли ряд изменений и улучшений в агент корутин в отладчике. Теперь перейти к нему можно через вкладку Coroutine в окне Debug. Он работает для конфигураций запуска Java с зависимостью от kotlinx.coroutines, а также для конфигураций запуска Spring и Maven.

Кроме того, мы исправили ошибку, когда локальные переменные не использовались после прохода точки приостановки и исчезали в режиме просмотра Variables в окне Debugger.

Свобода действий во время индексации

Свобода действий во время индексации

Не теряйте время даром! Пока IDE индексирует проект, вы можете запустить свое приложение и выполнить его отладку. Кнопки, связанные с Run/Debug Configuration, теперь активны во время индексации.

Поддержка WSL 2 и Run Targets для Kotlin

Поддержка WSL 2 и Run Targets для Kotlin

В IntelliJ IDEA 2021.1 мы впервые реализовали поддержку WSL 2 и внедрили функцию Run Targets. Начиная с версии 2021.2 эти функции можно использовать для Kotlin.

Инспекция для упрощения цепочки вызовов в типе коллекции

Инспекция для упрощения цепочки вызовов в типе коллекции

В этой версии добавлена удобная инспекция, которая позволяет упростить синтаксис и объединить цепочку из нескольких вызовов методов внутри коллекции.

Intention-действие для преобразования buildString

Intention-действие для преобразования buildString

В предыдущих версиях нужно было вручную вводить buildString, чтобы дописать свой код. Новое intention-действие позволяет сделать это автоматически в два клика.

Scala

Улучшенная поддержка Scala 3

Улучшенная поддержка Scala 3

В новой версии основной упор сделан на поддержку Scala 3: она значительно улучшена. Индексация выполняется быстро и точно независимо от версии. Можно без проблем создавать проекты Scala 3 на основе sbt и .idea, а также Scala 3 SDK. Редактор лучше справляется с большими отступами. Мы обеспечили поддержку конструкций Scala 3 в проектах Scala 2 (-Xsource:3). Кроме того, улучшен отладчик, инструмент форматирования, REPL, автоматический импорт, перечисления, методы расширения и многое другое. Но помните, что работа над поддержкой Scala 3 еще не закончена, поэтому не исключены сложности.

Подсветка с использованием компилятора

Подсветка с использованием компилятора

Как это всегда бывает на платформе IntelliJ Platform, в плагине Scala есть встроенная подсветка ошибок. Это быстрая и легкая функция, которая поддерживает все стандартные возможности IntelliJ IDEA. Однако система типов Scala очень сложна, поэтому алгоритм время от времени находит ложные ошибки. Мы работаем над улучшением этой функции, но для некоторых кодовых баз может оказаться удобнее использовать для подсветки ошибок компилятор Scala. При этом нужно помнить, что такой вариант точнее, но медленнее, требует больше ресурсов и не поддерживает такие функции, как подсказки о несоответствии типов, быстрые исправления и инспекции. Поэтому, если в коде не слишком много ложных ошибок, лучше использовать встроенную подсветку.

JavaScript

Перезагрузка страниц в браузере при сохранении изменений

Перезагрузка страниц в браузере при сохранении изменений
Ultimate

IntelliJ IDEA позволяет просматривать HTML-файлы в браузере с помощью встроенного веб-сервера. Теперь IDE будет автоматически обновлять страницы в браузере, когда вы изменяете и сохраняете файлы HTML, CSS и JavaScript. Чтобы использовать эту функцию, откройте в редакторе файл HTML, наведите на него курсор и нажмите на значок нужного браузера (поддерживаются любые браузеры).

Рефакторинг Rename для React useState hooks

Рефакторинг Rename для React useState hooks
Ultimate

Вам больше не нужно тратить время на рефакторинг отдельных значений и функций useState — IntelliJ IDEA переименует их самостоятельно. Установите курсор на значение состояния и нажмите Shift+F6 или выберите Refactor | Rename в контекстном меню.

Автоматический импорт для require()

Автоматический импорт для require()
Ultimate

Знаете ли вы, что IDE умеет добавлять отсутствующие операторы импорта при вводе ES6-символов? Теперь то же самое возможно для модулей CommonJS: при автодополнении кода будет вставлен оператор require.

Профилировщик

Поддержка Async Profiler в Windows и Apple M1

Поддержка Async Profiler в Windows и Apple M1
Ultimate

Async Profiler — любимый профилировщик множества разработчиков. Он отличается точностью и надежностью. В новой версии IntelliJ IDEA обеспечена полная поддержка профилировщика в Windows и Apple M1 в дополнение к Linux и macOS на других чипах. Таким образом, теперь его можно использовать в большинстве сред.

Поддержка Async Profiler 2.0
Ultimate

IntelliJ IDEA поддерживает Async Profiler 2.0. Для этого нужна новая конфигурация Async Profiler, объединяющая возможности профилировщиков ЦП и распределения ресурсов. На вкладках Flame Graph, Call Tree и Method List появился новый раскрывающийся список Show, где можно выбрать просмотр задач ЦП или распределения памяти. На хронологическом графике показаны оба параметра. Отображение можно настроить с помощью поля в правом верхнем углу.

Поддержка диаграмм «солнечные лучи»

Поддержка диаграмм «солнечные лучи»
Ultimate

При двойном нажатии на объекте на вкладке Classes в IntelliJ IDEA 2021.2 данные выбранного объекта отображаются на вкладке Retained Objects в виде диаграммы «солнечные лучи». Если вы больше привыкли анализировать данные, представленные в виде дерева, воспользуйтесь вкладкой Dominator Tree.

Системы сборки проектов

Артефакты JLink

Артефакты JLink

Если вы хотите создать пользовательскую JDK, содержащую только модули и зависимости, необходимые для работы над проектом Jigsaw, можно воспользоваться окном Project structure, чтобы добавить в проект новые артефакты JLink.

Обновленные настройки Gradle

Обновленные настройки Gradle

Мы переработали интерфейс настроек Gradle Run/Debug Configurations. Теперь основные параметры собраны в одном окне. При необходимости вы можете добавить и другие параметры.

Ускоренная индексация проектов в WSL 2

Для файлов проектов, хранящихся в WSL 2, используется демон, который переносит содержимое файлов из Linux в Windows и обратно через сокет. Благодаря этому удалось увеличить скорость индексации, поскольку она зависит от того, с какой скоростью IDE считывает содержимое файла.

В зависимости от используемого языка прирост в скорости может меняться. Например, для JS-подобных языков время индексации сократилось втрое.

Поддержка Ant в WSL 2

Теперь в WSL 2 можно выполнять задания Ant.

Управление версиями

Изменения проверок перед коммитом

В версии 2021.2 в список действий, которые могут выполняться перед коммитом, было добавлено выполнение тестов. Если установить флажок Run Tests в разделе Before Commit, IDE протестирует внесенные изменения и уведомит о любых возникших проблемах.

Кроме того, мы добавили возможность настройки параметров Analyze code и Cleanup: для этого надо нажать на Choose profile рядом с соответствующим пунктом.

Ход выполнения и результаты всех предкоммитных проверок отображаются в поле Commit без появления дополнительных модальных окон.

Цифровая подпись GPG

Цифровая подпись GPG

IntelliJ IDEA 2021.2 дает возможность защитить коммиты в Git, подписав их с помощью GPG. Для этого перейдите в меню Preferences/Settings | Version Control | Git, нажмите Configure GPG Key и выберите нужный ключ из раскрывающегося списка. Если вы используете ключ GPG впервые, его нужно настроить.

Changes вместо Default Changelists в новых проектах

Changes вместо Default Changelists в новых проектах

Узел, где хранятся изменения до коммита, раньше назывался Default changelists. В новых проектах, созданных начиная с версии 2021.2, он будет называться Changes. Кроме того, при выполнении операций Git списки изменений не будут создаваться автоматически.

Единообразное поведение для Show Diff

Единообразное поведение для Show Diff

Независимо от того, как вы вызываете действие Show Diff, IntelliJ IDEA по умолчанию отображает различия между исходными и измененными файлами в редакторе. Если вам удобнее отслеживать изменения в отдельном окне, просто вытащите нужный файл из редактора.

Поддержка диаграмм «солнечные лучи»

Текстовый поиск по версиям Local History

Нужный текст легко найти в версиях Local History: просто введите ключевые слова в поле поиска в диалоговом окне Local History.

Терминал

Новые возможности терминала

Новые возможности терминала

Теперь во встроенном терминале можно выбирать форму курсора. Кроме того, он поддерживает функцию Use Option as Meta key, которая позволяет использовать клавишу Option () как метамодификатор в сочетании с другими клавишами. Например, можно использовать следующие сочетания:

  • ⌥+F — переход к следующему слову;
  • ⌥+B — переход к предыдущему слову;
  • ⌥+D — удаление следующего слова.

Отладчик

Вкладка Preview в отладчике

Вкладка Preview в отладчике

Раньше, когда вы останавливались на точке останова, исполняли код пошагово, перемещались между фреймами или использовали действия prev/next frame, IDE открывала файлы в нескольких вкладках. В версии 2021.2 в отладчике появилась вкладка предварительного просмотра. Ее можно включить в меню Settings/Preferences | General | Editor Tabs. В этом случае все файлы откроются друг за другом в одной вкладке.

Фреймворки и технологии

Схема микросервисов

Схема микросервисов
Ultimate

Если вы нажмете на соответствующий значок в окне Endpoints, IntelliJ IDEA отобразит схему связей микросервисов. На этой схеме можно отследить, какой клиент вызывает тот или иной сервис, и перейти к этому вызову в коде. Для этого просто нажмите на стрелку, соединяющую элементы схемы.

Схема доступна для проектов Java и Kotlin, если вы используете Spring, Micronaut, Quarkus или Helidon.

Автоматическая миграция с Java EE на Jakarta EE

Автоматическая миграция с Java EE на Jakarta EE
Ultimate

Новый рефакторинг Migrate... позволяет быстро и легко перенести проект или модуль с Java EE на Jakarta EE. После запуска миграции функция предпросмотра Refactoring Preview выводит все найденные случаи использования импортов Java EE. Их можно проверить и завершить процесс.

Автоматическое скачивание общих индексов для новых проектов Spring Boot

Автоматическое скачивание общих индексов для новых проектов Spring Boot
Ultimate

При создании нового проекта Spring Initializer IDE автоматически скачает общие индексы, сократив время индексации и ускорив запуск IDE. Чтобы включить эту функцию, поставьте флажок во втором окне мастера создания нового проекта. Обратите внимание: функция не работает, если вы отключили общие индексы в меню Settings/Preferences | Shared Indexes.

Поддержка графа сущностей JPA

Поддержка графа сущностей JPA
Ultimate

In this version, we’ve introduced support for an Entity Graph which you can define with the @NamedEntityGraph annotation. IDE позволяет задать для этой аннотации уникальное имя и атрибуты (@NamedAttributeNode), используя автодополнение кода, обнаружение ошибок и переход к соответствующей сущности при нажатии на атрибут.

Поддержка аннотаций кэша в Micronaut и Quarkus

Поддержка аннотаций кэша в Micronaut и Quarkus
Ultimate

Cache annotations for Micronaut and Quarkus are now supported in the IDE. Мы добавили в редакторе навигацию между использованиями имени кэша, а также возможность использования функции Find usages и рефакторинга Rename для идентификаторов кэша.

Улучшенная поддержка навигации по микросервисам в JavaScript и TypeScript
Ultimate

Значительно улучшена навигация по URL в JavaScript и TypeScript. For client-side code (for Angular or Axios), URL references have been added for the $http service and HttpClient request method calls, and URL completion works based on available server-side frameworks and OpenAPI specifications. Что касается серверного кода, пользователи Express могут видеть обработчики маршрутов в окне Endpoints и искать объявления маршрутов and Express в меню Navigate | URL Mapping.

Отображение конечных точек gRPC в окне Endpoints

Отображение конечных точек gRPC в окне Endpoints
Ultimate

В этой версии мы добавили поддержку еще одного фреймворка — gRPC. В дальнейшем набор функций для работы с ним будет расширен. В настоящее время можно просматривать конечные точки gRPC в окне Endpoints. Ждите новостей!

Интеграция с Ktor

Интеграция с Ktor
Ultimate

Ktor, a web application framework for creating connected systems, is bundled with IntelliJ IDEA Ultimate. Прямо на начальном экране можно создать новый проект Ktor для разработки серверных или клиентских приложений, настроить основные параметры проекта и различные функции, поддерживаемые Ktor.

JetBrains поддерживает плагин Protocol Buffers
Ultimate

Плагин Protocol Buffers интегрирован с IntelliJ IDEA Ultimate, и команда JetBrains обеспечила его полную поддержку. Если вы работаете с IntelliJ IDEA Community Edition, то можете скачать и установить Protocol Buffers через Preferences/Settings | Plugins | Marketplace.

Docker

Работа с Docker через SSH

Работа с Docker через SSH

К Docker можно подключиться через SSH. Чтобы настроить SSH-соединение, перейдите в Preferences / Settings | Build, Execution, Deployment | Docker, нажмите переключатель On SSH machine, затем нажмите и в открывшемся окне введите параметры SSH-соединения.

Синхронизация сервисов

Синхронизация сервисов

Приложения Docker Compose можно отобразить в окне Services, даже если они не запущены. Для этого просто нажмите на кольцевые стрелки в окне редактора.

Новые значки состояний сервисов

Новые значки состояний сервисов

Мы сделали новые значки для различных состояний сервисов Docker Compose. Чтобы освоиться с ними, воспользуйтесь подсказками, которые появляются при наведении курсора на каждый значок.

Улучшенные журналы

Мы внесли ряд изменений в журналы Docker Compose. У каждого узла сервиса есть свой журнал, а в журналах контейнера можно настроить показ меток времени и предыдущих сеансов. Эти функции можно отключить в меню Preferences/Settings | Build, Execution, Deployment | Docker | Console, сняв флажок Fold previous sessions in the Log console.

Новые параметры Run/Debug Configurations

Новые параметры Run/Debug Configurations

В настройках Run/Debug Configurations появились новые параметры Docker Compose. Нажав на Modify options, можно включить Enable BuildKit, Enable compatibility mode и Specify project name. Проекту можно дать любое имя, он не наследует его от папки, где приложение Docker Compose находится по умолчанию.

Новые действия для контейнеров

Управлять контейнерами Docker стало еще проще благодаря новым кнопкам, которые позволяют запускать и перезапускать контейнеры, а также приостанавливать и возобновлять их работу. Кроме того, все эти действия можно выполнить сразу для нескольких контейнеров.

Умный способ удаления образов

Умный способ удаления образов

Удаляя образы Docker с зависимостями, можно указать, какие зависимости следует удалить, а какие — оставить.

Новые узлы Networks и Volumes

Новые узлы Networks и Volumes

Мы добавили два новых узла в окне Services: Networks и Volumes. Первый узел включает в себя все сети, не связанные с приложением Docker Compose. The second includes all the Docker Volumes. Удалить тома можно так же, как изображения (см. выше).

Поддержка Docker Compose версии 3

Поддержка Docker Compose версии 3

We’ve added support for version 3 of the Docker Compose file format. Поэтому теперь IntelliJ IDEA правильно использует возможности версии 3, и для этих файлов работает автодополнение кода.

Kubernetes

Поддержка поля alias в зависимостях диаграмм Helm

Поддержка поля alias в зависимостях диаграмм Helm
Ultimate

В IntelliJ IDEA 2021.2 можно использовать поле alias в разделе dependencies в Chart.yaml (api v2) или requirements.yaml (api v1). В этом поле указывается другое имя для текущей зависимости. Поле alias может быть полезно, если существующая зависимость используется несколько раз, и вы хотите отличать эти использования. Кроме того, alias поможет в тех случаях, когда в имени диаграммы использованы символы, запрещенные в идентификаторах GoTemplate.

Пользовательские пространства имен

Пользовательские пространства имен
Ultimate

Иногда при работе в кластере Kubernetes вы получаете доступ к определенным пространствам имен, но у вас нет списка всех пространств имен кластера. Теперь в таких случаях можно создать список доступных пространств имен в Preferences / Settings | Tools | Kubernetes.

Избранные пространства имен

Избранные пространства имен
Ultimate

Мы упростили управление несколькими пространствами имен, чтобы можно было быстро найти самые часто используемые. Теперь избранное пространство имен можно отметить звездой. Такие пространства имен отображаются в начале списка, а остальные будут отсортированы в алфавитном порядке.

Инструменты для работы с базами данных

Источник данных DDL

Источник данных DDL
Ultimate

В новой версии можно создать источник данных DDL на основе обычного. На диске создаются файлы DDL, а на их основе — новый источник данных. Благодаря этому вы всегда сможете пересоздать эти файлы и обновить источник данных DDL. Пошаговые инструкции по использованию этой функции — в нашем блоге.

Управление отображением окна Services

Управление отображением окна Services
Ultimate

Показывать скрытое ранее окно Services не нужно, если запрос не возвращает данные. Теперь вы можете самостоятельно определить в Preferences / Settings | Tools | Database | General, при выполнении каких операций появляется окно Services.

Автозаполнение полей и операторов

Автозаполнение полей и операторов
Ultimate

Автодополнение кода теперь работает для различных типов полей и операторов в консоли MongoDB. Подробнее читайте в нашем блоге.

Инструменты QA

Пользовательские пространства имен

Генерация тестовых данных

При разработке юнит-тестов важно иметь возможность вставить случайный адрес электронной почты, имя или номер телефона. Новый плагин Test Data, который входит в наш Набор для автоматизации тестирования, позволяет выполнять множество действий для генерации случайных данных. Доступ ко всем возможностям — в меню Generate (Cmd+N). Если вам нужны новые данные в особом формате, нужный пользовательский формат легко создать с помощью регулярных выражений или шаблонов Velocity. Все пользовательские типы данных доступны в массовом режиме, и ими можно поделиться с командой.

Интеграция со Space

Статусы заданий Space в журнале Git

Статусы заданий Space в журнале Git

Мы добавили значки статусов заданий Space на вкладку Log окна Git, чтобы было легко отследить ход выполнения задания, посмотрев в список коммитов. При нажатии на значок откроется всплывающее окно с автоматической информацией о задании.

Чтобы отключить показ информации о статусе, нажмите на значок глаза на вкладке Log и выберите Show Columns | Space Automation.

Упоминание коллег

Упоминание коллег

Общаться с коллегами при ревью кода в Space стало удобнее: их можно упомянуть, введя символ @, а затем имя коллеги. Эта небольшая, но очень полезная функция работает в хронологическом графике и в комментариях к коду.

Отображение веток в ревью кода

Отображение веток в ревью кода

В новой версии IDE в выбранном ревью кода можно отображать связанные ветки. На вкладке Details можно посмотреть список всех веток, куда сделаны коммиты, во время работы над текущей задачей.

Совместная разработка

Синхронизация автодополнения кода

Синхронизация автодополнения кода

Теперь вам будет проще понять логику действий коллеги, за работой которого вы наблюдаете, поскольку вы сможете видеть предложения функции автодополнения кода, которые он использует. Эта функция работает во время сеанса Code With Me в режиме Following.

Отмена своих действий

Отмена своих действий

В IntelliJ IDEA 2021.2 обновлена функция Undo. Она значительно упрощает совместное программирование. Переработанная логика Undo позволяет как ведущему разработчику, так и гостям отменять собственные изменения в коде. Таким образом, переход на версию 2021.2 позволит избежать неприятных ситуаций, когда один из разработчиков случайно удаляет работу своих коллег. Это особенно полезно при парном и групповом программировании.

Демонстрация экрана во время сеанса совместной работы

Демонстрация экрана во время сеанса совместной работы

Пользователям стала доступна одна из самых долгожданных функций — демонстрация экрана. В версии 2021.2 можно продемонстрировать коллегам окно любого приложения на экране компьютера, а не только окно IDE JetBrains. Это упрощает совместную работу.

Перенаправление портов коллегам по парному программированию

Перенаправление портов коллегам по парному программированию

Пользователи IntelliJ IDEA 2021.2 могут поделиться с другими участниками сеанса открытыми портами — для этого используется встроенный прокси. Если ведущий запускает приложения, используя определенный порт, остальные могут получить к нему доступ через локальный хост на своих машинах.

Другие возможности

Локализация интерфейса на китайский, корейский и японский языки

Начиная с этой версии, пользовательский интерфейс IntelliJ IDEA полностью локализован на китайский, корейский и японский языки. Локализованный интерфейс можно скачать в виде плагинов с отдельными языковыми пакетами, которые легко установить в IDE. Более 1,5 млн пользователей начали использовать частично локализованные EAP-версии. Теперь доступна полностью локализованная версия.

Обновление плагина Android

Плагин Android обновлен до версии 4.2.0.

Плагины, не входящие в комплект

Мы проанализировали частоту использования плагинов, и убрали некоторые из комплекта: Resource Bundle Editor, Drools, JSP Debugger Support, CoffeeScript, Spring Web Flow, Spring OSGI, Arquillian, AspectJ, Guice, Helidon, Emma и EJB. Если эти плагины вам нужны, их можно установить вручную из JetBrains Marketplace.