Pull to refresh
0
JetBrains
Делаем эффективные инструменты для разработчиков

IntelliJ IDEA 2020.2

Reading time6 min
Views7.5K
Привет, Хабр!

Недавно состоялся релиз IntelliJ IDEA 2020.2! В новой версии много нового: теперь можно полноценно управлять пул-реквестами GitHub из IDE и просматривать все ошибки и предупреждения в проекте с помощью виджета Inspections. Работать с несовершенным кодом помогает также новое окно Problems, в котором можно увидеть подробное описание ошибок и быстро их исправить. Если вы вносите изменения, которые мешают работе другого кода, IDE сообщит вам об этом в подсказке Related Problems.

Кроме того, IntelliJ IDEA 2020.2 поддерживает Jakarta EE и предоставляет новые возможности для работы с Quarkus, Micronaut, Amazon SQS API и OpenAPI.


В разделе What’s New на сайте подробно описаны все изменения, но здесь мы собрали самое важное.


image

Java


  • Мы заранее подготовились к релизу Java 15 в сентябре, поэтому в IntelliJ IDEA 2020.2 можно работать с записями, запечатанными классами и текстовыми блоками.
  • Если изменение Java-метода или поля привело к ошибкам в других файлах, IDE сообщит об этом. Нажмите на подсказку и увидите список ошибок, которые можно сразу исправить.
  • При помощи статического анализа IDE определяет, какое выражение вызвало исключение во время работы приложения.
  • Из структурного поиска можно легко создать инспекцию с описанием и уровнем важности.
  • Рефакторинг Introduce Variable работает более гибко: теперь можно заменить только вхождения выражения внутри условия или цикла (раньше можно было заменить либо одно, либо все вхождения).
  • Когда вы вызываете метод Stream API на коллекции/массиве, IDE автоматически подставляет stream(). Кроме того, в цепочках вызовов автодополнение предлагает методы нужного типа.
  • Новое действие разрешает преобразовать цепочку вызовов Optional в цепочку if-выражений.
  • Вы можете свернуть несколько однотипных операторов в цикл, а intention-действие Unroll loop теперь разворачивает больше циклов, запрашивая количество итераций у анализатора потока данных.
  • Чтобы шаблоны live templates для Java было проще найти, мы сгруппировали их под отдельным узлом в Settings | Preferences / Editor / Live Templates.
  • Благодаря анализу потока данных, IDE сообщает о нетривиальных выражениях, которые вычисляются в 0, и предупреждает о ненужных сравнениях, в которых результат Math.min или Math.max не бывает больше или меньше другого операнда.

Редактор


  • Добавили виджет Inspections, который показывает, сколько предупреждений и ошибок найдено в вашем файле, и позволяет легко перемещаться между ними.
  • В новом окне Problems можно посмотреть список предупреждений и ошибок с описаниями и быстро исправить проблемный код.
  • Теперь можно заранее посмотреть, как будет выглядеть код после применения быстрого исправления (quick-fix).

Система контроля версий


  • Все действия по обработке пул-реквестов GitHub доступны прямо из IDE. Вы можете просматривать, назначать и объединять пул-реквесты, читать комментарии (как в хронологии, так и в коде), отправлять комментарии и ревью, а также принимать изменения.
  • Для работы над проектами в файловых системах Linux или Windows, можно пользоваться Git, установленный в WSL2.
  • Появилась возможность удалять коммиты, выбирать несколько коммитов из локальной ветки и объединить их в один на вкладке Log.
  • При сравнении двух веток в IntelliJ IDEA все коммиты отображаются в одном окне.
  • Вместо авторизации в GitHub по паролю теперь используется авторизация по протоколу OAuth.

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


  • В сентябре выходит Jakarta EE 9, и IntelliJ IDEA уже поддерживает основные технологии, включая CDI, JPA, Batch, Bean Validation, JSF, JAX-RS, WebSocket, Servlets, JSP, JSON-P, JSON-B, Security, EJB и JTA.
  • Теперь можно создавать проекты Java EE 8 и Jakarta EE 9 в обновленном мастере проектов.
  • Подсветка кода и автодополнение работают для файлов конфигурации .properties и YAML в проектах Quarkus.
  • IDE позволяет переходить от файлов свойств Quarkus к настроенным bean-компонентам и обратно, а также от Java-кода к файлам свойств.
  • В редакторе предусмотрена навигация по встроенным bean-компонентам. Кроме того, мы обновили инспекции для работы с упрощенным синтаксисом Quarkus.
  • В тестах REST Assured теперь работает автодополнение URL-адресов и навигация к соответствующим ресурсам.
  • В IDE появилась интеграция с интерфейсом Swagger.
  • IntelliJ IDEA теперь показывает структурные различия между спецификациями OpenAPI.
  • Можно создавать проекты Micronaut в мастере создания проектов.
  • Для приложений Micronaut и Amazon SQS API, в которых используется асинхронная обработка данных через RabbitMQ или Kafka, теперь работает автодополнение имен, поиск использований, и навигация по очередям и темам с помощью значков на поле редактора.
  • IntelliJ IDEA может автоматически генерировать HTTP-запросы JAX-RS и MicroProfile и открывать их во встроенном REST-клиенте.
  • Selenium-плагин поддерживает интеграцию с Selenoid. Теперь прямо из файла browsers.json можно запустить новое тестовое окружение.

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


  • Мы улучшили инструмент просмотра дампов памяти HPROF. Теперь для каждого объекта возможно увидеть количество памяти, которое он не дает освободить; пути до ближайших корневых объектов сборщика мусора; дерево доминаторов (удерживаемые от удаления объекты); а также обратные ссылки из других объектов.

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


  • С помощью нового плагина Shared Indexes можно загружать уже построенные индексы, вместо того чтобы создавать их локально. Это ускорит индексирование больших проектов на 60–75%.
  • Во время индексирования теперь работает автодополнение для Java и PHP.

Терминал


  • Управлять IDE можно прямо из терминала. Если команда подсвечена в терминале, нажмите Cmd/Ctrl+Enter, чтобы открыть соответствующий инструмент в графическом интерфейсе IDE. Читайте, как это работает в нашем блоге.

Инструменты сборки


  • Maven Wrapper теперь автоматически устанавливает версию Maven, необходимую для вашего проекта.
  • Раньше было обязательно использовать одну и ту же версию Maven во всех открытых проектах, а, начиная с этого релиза, можно выбирать нужную для вашего проекта.
  • Теперь вывод встроенного инструмента сборки отображается в окне Build, там же, где обычно вы видите результаты сборок Gradle и Maven.
  • IntelliJ IDEA 2020.2 поддерживает автодополнение имен проектов и навигацию от имени проекта к файлам build.gradle.

JavaScript и TypeScript


  • Новые intention-действия (Alt + Enter) помогут ускорить некоторые операции. Например, можно быстро преобразовать цикл for с числовым индексом в перебирающий метод forEach.
  • Теперь очень легко использовать Prettier в качестве форматера по умолчанию в JavaScript-проектах: просто отметьте галочкой опцию On code reformat в настройках.
  • Мы добавили поддержку Nuxt.js и настройки стиля кода, специфичные для Vue.

База данных


  • Теперь можно просматривать и редактировать длинные значения на отдельной панели в режиме Maximize.
  • Работать с ячейками типа boolean стало гораздо удобнее, потому что вы видите в них значения, а не флажки.
  • Результаты запросов к базе данных можно увидеть в редакторе.
  • Мы добавили начальную поддержку диалекта Google BigQuery. IDE обеспечивает подсветку и автодополнение запросов.

Docker


  • Благодаря поддержке TLS-соединений с демоном Docker, пользователи Windows могут безопасно подключиться к Docker.

Kubernetes


  • В настройках Preferences/Settings | Build, Execution, Deployment | Kubernetes теперь можно указать кастомный файл kubeconfig.
  • Мы добавили поддержку редактирования ConfigMaps/Secrets. Более того, IDE берет информацию не только из текущего проекта, но и из кластера.
  • Для объектов ConfigMaps/Secrets и их ключей можно вызвать Find Usages из кластера.

Scala


  • Добавлен автоматический импорт Implicits.
  • В новой версии фигурные скобки добавляются и удаляются в зависимости от отступов.
  • В редакторе появились навигационные значки для компаньонов. Вы также можете перейти к компаньону, вызвав действие Go To на ключевых словах class, trait или object.
  • Мы сделали рендеринг Scaladoc прямо в редакторе и улучшили его во всплывающем окне Quick Documentation: абзацы, списки и макросы отображаются корректно.
  • Теперь можно сразу подставить и имя метода, и его аргументы, если в текущей области доступа присутствуют соответствующие значения.
  • Кроме того, вы можете применить статическую функцию к аргументу при помощи точечной записи, которая может использоваться в сочетании с алгебраическими типами данных.

Android


  • IntelliJ IDEA 2020.2 включает в себя все нововведения из Android Studio 4.0.

Другие изменения


  • Если вы используете программу чтения с экрана, IDE определит это и автоматически включит функции специальных возможностей.
  • В IntelliJ IDEA 2020.2 можно использовать эмодзи Unicode на Linux.
  • Значительно улучшена производительность удаленной отладки Java-проектов.
  • Мы перешли с JavaFX на JCEF (Chromium Embedded Framework). Начиная с версии 2020.2, больше не будет встроенной поддержки JavaFX, теперь она вынесена в отдельный плагин, который внешние плагины могут использовать в качестве зависимости.
  • У сочетания клавиш Alt+6 (Linux and Windows) / Cmd+6 (macOS) новое назначение: теперь вместо вызова TODO оно открывает окно Problems.
  • Начиная с этой версии, IntelliJ IDEA не поддерживает запуск и тестирование проектов, написанных на Java 5 и более ранних версиях. В редакторе поддержка Java 5 остается.

Делитесь своими впечатлениями о новой версии в комментариях, на нашем форуме, и в Twitter. Все подробности о новой функциональности со скриншотами можно найти на нашем сайте и в видеообзоре.


Скачивайте IntelliJ IDEA 2020.2 и работайте еще продуктивнее с новыми фичами!


Программируйте с удовольствием!

Tags:
Hubs:
Total votes 11: ↑11 and ↓0+11
Comments19

Articles

Information

Website
jetbrains.com
Registered
Founded
Employees
1,001–5,000 employees
Location
Чехия