IntelliJ IDEA
IntelliJ IDEA – the Leading Java and Kotlin IDE, by JetBrains
Публикации и ответы на комментарии в блогах JetBrains не выходят на русском языке с 2022 года.
Приносим извинения за неудобства.
Встречайте IntelliJ IDEA 2020.2!
В IntelliJ IDEA 2020.2 много нового: теперь можно управлять пул-реквестами GitHub прямо из IDE, просматривать полный список проблем с текущим файлом в специальном окне и быстро навигироваться по ошибкам и предупреждениям с помощью нового виджета. Если внесенные изменения привели к ошибкам в других файлах, IDE об этом сообщит. Кроме того, IntelliJ IDEA 2020.2 поддерживает Jakarta EE и предоставляет новые возможности для работы с Quarkus, Micronaut и OpenAPI.
Java
- Java 15 выйдет только в сентябре, а IntelliJ IDEA 2020.2 уже готова к этому. Мы улучшили поддержку записей (records), добавили базовую поддержку запечатанных классов (sealed classes) и полностью поддержали текстовые блоки.
- Если изменение Java-метода или поля привело к ошибкам в других файлах, IDE мгновенно сообщит об этом. Нажмите на подсказку, и IntelliJ IDEA покажет список ошибок и предложит их исправить.
- Если во время работы приложения возникнет исключение, IDE применит статический анализ, чтобы выяснить причину и определить, какое именно выражение вызвало исключение.
- Теперь можно легко создать инспекцию из структурного поиска, добавить к ней описание и указать уровень серьезности.
- Рефакторинг Introduce Variable работает более гибко: теперь можно выбрать разные варианты замены для разных случаев (раньше можно было заменить либо одно, либо все вхождения).
- Теперь, когда вы начнете вызывать метод Stream API на коллекции/массиве, IDE автоматически подставит stream().
- Еще одно улучшение Stream API: теперь в цепочках вызовов автодополнение предлагает методы ожидаемого типа.
- Новое действие позволяет преобразовать optional chain в цепочку if-выражений.
- Вы можете свернуть несколько операторов в цикл, а intention-действие Unroll loop теперь берет размер цикла из потока данных.
- Механизм анализа потока данных сообщит о нетипичных выражениях, которые вычисляются в 0, и предупредит о ненужных сравнениях, когда Math.min или Math.max не бывает больше или меньше другого операнда.
- Мы сгруппировали живые шаблоны для Java под отдельным узлом в Settings/Preferences, чтобы их было проще найти среди остальных.
Узнайте больше об улучшениях для Java на нашем сайте.
Редактор
- Мы добавили виджет, который показывает количество предупреждений и ошибок в текущем файле и позволяет легко перемещаться между ними.
- А в новом окне Problems вы увидите список предупреждений и ошибок с описаниями. Можно быстро исправить проблемный код прямо из этого окна.
- Теперь можно заранее посмотреть, как будет выглядеть код после применения intention-действия.
- Мы обновили дизайн диалога фоновых процессов — теперь он выглядит аккуратнее.
- А еще навели порядок в строке состояния.
Подробнее об улучшениях редактора читайте на сайте.
Система контроля версий
- Теперь все действия по обработке пул-реквестов GitHub можно выполнять прямо из IDE. Вы можете просматривать, назначать и даже объединять пул-реквесты, читать комментарии (как в хронологии, так и в коде), отправлять комментарии и ревью, а также принимать изменения.
- IntelliJ IDEA 2020.2 поддерживает Git, установленный в WSL2, для работы над проектами, расположенными в файловых системах Linux или Windows.
- Мы обновили дизайн диалогов Merge, Pull и Rebase — взаимодействовать с ними стало удобнее.
- Появилась возможность объединять коммиты на вкладке Log.
- Кроме того, из Git-лога теперь можно удалять коммиты.
- При сравнении двух веток в IntelliJ IDEA все коммиты отображаются в одном окне.
- Вместо авторизации в GitHub по паролю с этой версии будет использоваться авторизация по протоколу OAuth.
Подробнее об улучшениях в работе с VCS читайте на сайте.
Фреймворки и технологии
- Мы добавили поддержку Jakarta EE 9. Вот какие технологии Jakarta EE уже поддерживаются в 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 в обновленном мастере проектов.
- IntelliJ IDEA поддерживает подсветку и автодополнение для файлов конфигурации .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. Подробнее.
Инструменты сборки
- IntelliJ IDEA 2020.2 поддерживает Maven Wrapper, который автоматически устанавливает необходимую для вашего проекта версию Maven.
- Раньше было обязательно использовать одну и ту же версию Maven во всех открытых проектах, а теперь можно указать определенную версию Maven для каждого проекта в отдельности.
- Теперь вывод встроенного инструмента сборки отображается в окне Build, там же, где обычно вы видите результаты сборок Gradle и Maven.
- IntelliJ IDEA поддерживает автодополнение имен проектов и навигацию от имени проекта к файлам build.gradle.
Подробнее об обновлениях инструментов сборки читайте на сайте.
JavaScript и TypeScript
- Новые intention-действия (AltEnter) помогут ускорить выполнение некоторых операций. Например, можно быстро преобразовать цикл
for
с числовым индексом в перебирающий методforEach
. - Теперь очень легко использовать Prettier в качестве форматера по умолчанию в JavaScript-проектах: просто отметьте галочкой опцию On code reformat в настройках.
- Мы добавили поддержку Nuxt.js и специальных настроек стиля кода Vue.
Узнайте больше о нововведениях от команды WebStorm на этой странице.
База данных
- Теперь можно просматривать и редактировать длинные значения на отдельной панели в режиме Maximize.
- Просматривать и редактировать ячейки с типом boolean стало гораздо удобнее: вы видите в ячейках значения, а не флажки.
- Теперь результаты запросов к базе данных можно просматривать в редакторе.
- Мы добавили начальную поддержку диалекта Google BigQuery. IDE обеспечивает подсветку и автодополнение запросов.
Подробнее об обновлениях инструментов для работы с базами данных читайте на странице What’s new.
Docker
- IntelliJ IDEA 2020.2 обеспечивает безопасное подключение к Docker на Windows, благодаря поддержке TLS-соединений с демоном Docker.
Узнайте больше об улучшениях в поддержке Docker на сайте.
Kubernetes
- В настройках Preferences/Settings | Build, Execution, Deployment | Kubernetes теперь можно указать кастомный файл kubeconfig.
- Мы добавили поддержку редактирования ConfigMaps/Secrets. Более того, IDE теперь берет информацию не только из текущего проекта, но и из кластера.
- Теперь для объектов ConfigMaps/Secrets и их ключей можно вызвать Find Usages из кластера.
Подробнее об обновлениях в поддержке Kubernetes читайте на сайте.
Scala
- Добавлен автоматический импорт Implicits. Подробнее
- В новой версии фигурные скобки автоматически добавляются и удаляются на лету в зависимости от отступов. Подробнее
- В редакторе появились навигационные значки для компаньонов. Вы также можете перейти к компаньону, вызвав действие Go To на ключевых словах
class
,trait
илиobject
. - Мы сделали рендеринг Scaladoc прямо в редакторе — теперь все выглядит четко и аккуратно.
- Мы также улучшили рендеринг Scaladoc во всплывающем окне Quick Documentation: абзацы, списки и макросы теперь отображаются корректно.
- Теперь можно сразу подставить и имя метода, и его аргументы, если в текущей области доступа присутствуют соответствующие значения.
- Кроме того, вы можете применить статическую функцию к аргументу, используя точечную запись, которая может использоваться в сочетании с алгебраическими типами данных.
Подробнее об обновлениях в поддержке Scala читайте на сайте или в блоге.
Android
- IntelliJ IDEA 2020.2 включает в себя все нововведения из Android Studio 4.0. Подробнее о возможностях новой версии читайте в блоге Android Studio.
Другие изменения
- Если вы используете программу чтения с экрана, 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. В редакторе поддержка Java 5 остается.
- В этом релизе мы убрали из комплекта несколько плагинов, которые используются недостаточно активно: JBoss Seam, JBoss jbpm, Play Framework, Flash/Flex, ASP, CFML и Struts 2.
Полный список изменений, вошедших в IntelliJ IDEA 2020.2, вы найдете в примечаниях к релизу.
Делитесь своими впечатлениями о новой версии в комментариях. Нам важно, что вы думаете. Как всегда, наш форум, баг-трекер и Twitter тоже к вашим услугам.
Все подробности о новой функциональности со скриншотами можно найти на нашем сайте и в видеообзоре.
Скачайте IntelliJ IDEA 2020.2 и получите доступ к новым возможностям.
Программируйте с удовольствием!
Оригинал статьи опубликован на habr.com:
https://habr.com/ru/company/JetBrains/blog/516816/