IntelliJ IDEA 2020.1 включает в себя поддержку Java 14 и новые возможности для фреймворков, функцию анализа потоков данных в отладчике, новый режим LightEdit, автоматическую загрузку и настройку JDK и многое другое.
IntelliJ IDEA 2020.1 поддерживает новые возможности Java 14. IDE не только предоставляет все функции анализа кода для записей (records), но и позволяет быстро создавать новые записи, их конструкторы и компоненты, а также предупреждает об ошибках. Кроме того, есть поддержка сопоставления с образцом для оператора instanceof
, включая новую инспекцию и быстрое исправление, которое заменяет избыточные выражения instanceof+cast на лаконичные переменные-образцы.
Больше не нужно искать необходимый JDK в интернете. При создании проекта в IntelliJ IDEA 2020.1 можно скачать и установить JDK прямо через IDE. При открытии загруженного проекта IDE проверит, есть ли на вашем компьютере подходящий JDK, и, если нет, предложит его скачать.
С каждой новой версией IntelliJ IDEA мы расширяем возможности статического анализа кода. Этот релиз не исключение. Помимо улучшений, мы добавили несколько новых инспекций. Они проверяют корректность использования заглавных букв в шаблонах SimpleDateFormat
, анализируют случаи форматирования дат, ищут избыточные вызовы методов, находят и предлагают удалить лишние экранирующие символы в строковых литералах.
В IntelliJ IDEA 2020.1 появился долгожданный режим LightEdit. Теперь вы можете быстро вносить изменения в отдельные файлы в облегченном редакторе, не создавая и не загружая проект. Открывать файлы в режиме LightEdit можно из командной строки, с начального экрана IDE или из файлового менеджера операционной системы. Чтобы переключиться из LightEdit в режим проекта, используйте действие Open File in Project (Alt+Enter).
Чтобы изменить сигнатуру метода или класса при разработке на Java или Kotlin, вам больше не придется иметь дело с громоздким модальным диалогом. Просто измените параметры класса или метода, а затем используйте новый значок на поле редактора или Alt+Enter, чтобы просмотреть и применить изменения к объявлению класса/метода и ко всем его использованиям.
Подробнее об обновленных рефакторингах Rename и Change Signature
Читать Javadocs в редакторе весьма неудобно из-за обилия тегов, через которые приходится продираться, особенно если нужно перейти по ссылке. Поэтому мы добавили рендеринг Javadocs прямо в редакторе. Включить эту функцию можно в меню Help | Find actions | Render documentation comments on file opening
.
Мы сделали первые шаги к реализации Code Vision — функции, которая помогает сосредоточиться на коде и при этом получать необходимую информацию о нем. В IntelliJ IDEA 2020.1 Code Vision умеет показывать использования и реализации символов Java. Чтобы включить эту функцию, перейдите в Preferences / Settings | Editor | Inlay Hints | Java
, выберите Code Vision
и поставьте нужные галочки в Show hints…
.
В IntelliJ IDEA 2020.1 появился еще один простой способ навигации по проекту. Вы можете перейти к нужной строке файла без прокрутки: на панели навигации теперь отображаются методы в классах и интерфейсах Java. Если вы не используете панель навигации, самое время включить ее в меню View | Appearance | Navigation Bar
.
Мы добавили новый режим погружения Zen. Он помогает полностью сосредоточиться на коде и ни на что не отвлекаться. В этом режиме редактор занимает весь экран, а все остальные элементы интерфейса скрыты — не нужно одновременно включать режимы Distraction Free и Full Screen. Просто выберите опцию Enter Zen Mode в меню View | Appearance
и программируйте, забыв об всем вокруг.
В IntelliJ IDEA 2020.1 встроен плагин Grazie — универсальный инструмент для проверки орфографии, грамматики и стиля письма. Теперь IDE заботится не только о коде. Плагин поддерживает 16 естественных языков и поможет вам не допускать ошибок в строковых литералах, комментариях, сообщениях коммитов, Javadocs и т.д. По умолчанию Grazie проверяет только текстовые файлы, но мы рекомендуем также включить проверку Java-файлов: Settings/Preferences | Editor | Proofread | Grammar
.
Вы можете посмотреть определения типов переменных, полей, методов и других символов, не меняя фокус ввода. Поместите курсор на нужный символ и выберите View | Quick Type Definition
в главном меню. IntelliJ IDEA покажет информацию о типе во всплывающем окне, из которого можно открыть исходный файл и перейти к редактированию кода.
В отладчике JVM теперь поддерживается анализ потоков данных. Он предсказывает, как будет выполняться программа. Когда выполнение приложения прерывается на точке останова, IDE производит анализ потоков данных на основе текущего состояния программы и проверяет, что будет дальше. Чтобы включить анализ, перейдите в меню Settings/Preferences | Build, Execution, Deployment | Debugger | Data Views | Java
.
Теперь можно закрепить любое поле объекта в верхней части списка полей. Это удобно, когда у объекта так много полей, что трудно найти нужное.
Поддержка профилирования приложений в IntelliJ IDEA постоянно развивается. В этой версии появилось несколько новых возможностей: Focus on Subtree (показать поддерево), Focus on Call (показать вызов), Exclude Subtree (исключить поддерево) и Exclude Call (исключить вызов). С помощью этих опций вы можете подробно рассмотреть выбранный вызов метода и отфильтровать ненужные.
Профилировщик IntelliJ IDEA теперь обнаруживает рекурсивные вызовы, когда один и тот же метод вызывается выше по стеку. IDE позволяет убрать такие вызовы из поддерева, чтобы вы могли сосредоточиться на методах, которые потребляют большую часть ресурсов, и на вызовах, которые они выполняют. Рекурсивные вызовы отмечены специальным значком на вкладке Call Tree окна Profiler.
В IntelliJ IDEA 2020.1 теперь можно открывать файлы дампов памяти .hprof, которые помогают обнаружить утечки памяти и найти способы оптимизировать использование памяти. Вы увидите сводную информацию: общий размер файла, количество объектов и трассировки стеков. Также будут перечислены все корневые объекты, сгруппированные по классам, все классы, отсортированные по количеству экземпляров или размеру, и все экземпляры классов с возможностью просмотра значений полей. Чтобы открыть hprof-файл, перейдите в раздел Help | Find action
и введите «hprof» для поиска действия Open Hprof Snapshot. Мы еще работаем над этой функциональность и планируем улучшить ее в следующих версиях.
Мы переработали интерфейс для записи изменений в репозитории и заменили модальный диалог полноценным инструментальным окном Commit. Теперь на экране больше места для списка измененных файлов и просмотра различий. Вы можете добавлять изменения в уже готовый коммит, менять сообщения коммита и выбирать, какие из проиндексированных изменений войдут в определенный коммит. У новых пользователей это окно включено по умолчанию, остальные могут включить его в меню Preferences/Settings | Version Control | Commit
.
Мы изменили диалог Interactively Rebase from Here, чтобы сделать его действительно интерактивным. Раньше этот диалог представлял собой список действий, которые можно применить к выбранным коммитам. Теперь в нем есть диаграмма, показывающая, какие действия были применены к каждому коммиту, отображаются сведения о коммитах, можно просмотреть различия и отменить изменения, если необходимо.
Больше не нужно заранее устанавливать Git вручную. Когда вы клонируете существующий Git-репозиторий, IntelliJ IDEA будет искать исполняемый файл Git на вашем компьютере и, если не найдет, предложит загрузить и установить программу.
Мы не только заботимся об эффективности IntelliJ IDEA, но и уделяем внимание ее внешнему виду. Многие пользователи уже знают, что недавно мы завершили разработку собственного шрифта JetBrains Mono. Мы получили массу положительных отзывов и решили сделать JetBrains Mono шрифтом по умолчанию в этой версии IntelliJ IDEA.
В IntelliJ IDEA 2020.1 появилась стандартная светлая тема, которая выглядит одинаково во всех операционных системах, — IntelliJ Light. Вы всегда можете вернуться к одной из привычных тем в меню View | Quick Switch Scheme | Theme
, но мы настоятельно рекомендуем попробовать IntelliJ Light.
Мы всегда следим за тенденциями в мире разработки и стараемся поддерживать самые популярные технологии. Поэтому в версии 2020.1 мы расширили поддержку фреймворка Spring WebFlux. Мы добавили маппинги запросов, поэтому, если в вашем приложении WebFlux включен Actuator, вы можете получить доступ к маппингам в окне Run, чтобы отслеживать свое приложение и взаимодействовать с ним. Кроме того, IntelliJ IDEA теперь корректно взаимодействует с API рендеринга, поэтому работает автодополнение и переход к связанным представлениям. Вы также можете в полной мере воспользоваться функциями анализа кода, такими как Find Usages (Alt+F7) и рефакторинг Rename (Shift+F6).
Раньше IntelliJ IDEA воспринимала выражения с профилями Spring просто как строки. В новой версии, IDE различает профили в выражении и позволяет применять к ним действия, например Find Usages (Alt+F7) или рефакторинг Rename (Shift+F6). Мы также улучшили всплывающее окно Change Active Spring Profiles и сделали автодополнение для существующих профилей.
IntelliJ IDEA 2020.1 Ultimate предоставляет начальную поддержку Selenium, фреймворка для тестирования веб-приложений, через новый плагин Selenium UI Automation Testing. Плагин поддерживает самые популярные JVM-фреймворки для UI-тестирования и библиотеки генерации отчетов о тестировании: Selenium, Selenide, Geb, Serenity BDD и Allure Framework.
Поддержка Selenium включает в себя новый мастер создания проектов, подсветку, инспекции и автодополнение кода в тестах для Java, Kotlin и Groovy, валидацию различных файлов конфигурации и иконки в редакторе для быстрой навигации.
Для приложений, написанных на Java и Kotlin, IntelliJ IDEA 2020.1 предоставляет полный набор функций анализа кода для JMS и Spring Messaging API. К ним относятся автодополнение, навигация, рефакторинг Rename (Shift+F7), добавление ссылок (Alt+Enter) и многое другое.
В предыдущей версии IntelliJ IDEA появилась поддержка фреймворка Micronaut. В этой версии мы добавили автодополнение параметров в файлах конфигурации, а также навигацию и быстрый просмотр документации. IDE предоставляет автодополнение базовых типов данных и определяет, является ли значение недопустимым. Кроме того, IntelliJ IDEA распознает инъекции регулярных выражений в сопоставлениях URL-адресов Micronaut — так синтаксис легче читать.
Мы добавили ряд полезных инспекций для RxJava. IntelliJ IDEA обнаружит неиспользуемые publishers и предупредит, если лямбда-функция возвращает null. Она также подсветит вызовы методов, блокирующие поток, и слишком длинные цепочки фильтров.
Теперь можно создавать проекты Quarkus и MicroProfile с помощью мастера создания проектов, который поможет все настроить.
IntelliJ IDEA теперь корректно обрабатывает фрагменты кода на SQL из популярных библиотек, которые раньше воспринимала как обычные строки. Кроме того, работает автодополнение и навигация для SQL-запросов и полей. Поддержаны R2DBC, Vert.x SQL Clients, Apache Spark SQL, Apache DB Utils и другие библиотеки.
IntelliJ IDEA 2020.1 интегрирована со Swagger Codegen — мощным инструментом для создания серверных заглушек, клиентов API и документации, который поддерживает многие языки программирования. Мы подготовили специальную конфигурацию запуска, в которой вы можете указать путь для создания файлов, путь к папке шаблонов .mustache, язык и другой JRE в случае проблем совместимости. Чтобы Swagger Codegen начал свою работу, просто откройте файл OpenAPI/Swagger, настройте несколько параметров и нажмите Run.
IntelliJ IDEA 2020.1 знает, как работать со спецификациями openapi/swagger. Например, для них работает автодополнение. Вам нужно просто ввести URL-адрес спецификации в настройках, и IDE будет подставлять URL-пути на лету. Вы также можете создавать свои спецификации так же, как вы обычно создаете классы и интерфейсы: File | New | OpenAPI Specification
.
HTTP-клиент в IntelliJ IDEA 2020.1 стал умнее. Теперь корректно работает автодополнение для переменных пути и URL-адресов, а также навигация из файлов HTTP-запроса прямо к соответствующим конечным точкам. Мы подготовили кое-что для пользователей Micronaut и Spring: для методов-обработчиков запросов в редакторе появился значок URL-маппингов. Используйте его, чтобы создать или открыть существующий файл HTTP-запроса и перейти к HTTP-клиенту.
Чтобы вам было проще извлекать образы из Docker Registry, мы переработали интерфейс и избавились от модального диалога. Теперь достаточно кликнуть по узлу Images на левой панели окна Service, и справа откроется вкладка Images Console, из которой вы сможете легко извлечь образы. Для образов также работает автодополнение.
Если вам нужно обновить кластер Kubernetes, чтобы он соответствовал состоянию, определенному в локальных файлах, можете вызвать команду Apply прямо из окна редактора.
В IntelliJ IDEA 2020.1 мы добавили небольшое, но важное обновление для пользователей Maven и Gradle. Вместо автоматического импорта теперь справа в верхней части редактора появляется плавающее уведомление. Используйте это уведомление или новое сочетание клавиш (Ctrl+Shift+O на Windows и Linux /Shift+Cmd+I на Mac), чтобы загрузить изменения после обновления файла сборки. Более того, если IntelliJ IDEA обнаружит изменения в файле сборки, сделанные не в IDE, а, например, в VCS, она автоматически обновит связанные проекты.
Раз Dotty суждено стать Scala 3, мы начали работать над полноценной поддержкой Scala 3. Плагин для Scala теперь включает в себя предварительную поддержку Scala 3, с новым синтаксисом, подсветкой ошибок, навигацией, информацией о типах и другими возможностями IDE.
Поскольку и язык, и его поддержка все еще находятся в разработке, мы рекомендуем использовать ежедневные сборки плагина, чтобы как можно быстрее получать доступ к новым функциям и исправлениям.
В Scala функциональные литералы используются очень часто. Они очень похожи на методы, у них есть отдельные параметры и тела. Но они часто рассматриваются как одно выражение функционального типа, что затрудняет поиск и интерпретацию ошибок.
В этой версии мы реализовали более точную подсветку ошибок в функциональных литералах, которая поможет вам находить ошибки, полагаясь на четкие сообщения.
Scala-плагин уже давно показывает неиспользуемые переменные и методы. Теперь он находит и неиспользуемые параметры. Параметры, на которые нет ссылок внутри методов или классов, выделены серым цветом.
В отличие от переменных и методов, неиспользуемые параметры часто указывают на ошибку программирования. Поэтому новая инспекция не только сделает ваш код чище, но и поможет предотвратить ошибки.
В Scala несколько вызовов методов часто встречаются на одной строке. В таких случаях использовать Step Into в отладчике неудобно: нужно вручную заходить в каждый метод, прежде чем достигнуть желаемого.
В этой версии действие Step Into стало умнее. Просто выберите нужный метод, IDE сделает все за вас.
Мы улучшили поддержку протокола BSP. Теперь он работает стабильней и поддерживает больше проектов и инструментов сборки. Больше не нужно вручную устанавливать Bloop для импорта проектов sbt через BSP: Scala-плагин автоматически конвертирует такие проекты в формат Bloop. Отменить сборки BSP теперь можно в окне Build. Наконец, вы можете управлять соединениями BSP через специальный виджет.
Новые действия и инспекции (Alt+Enter) сэкономят ваше время. Например, можно быстро преобразовать код в optional chaining и/или nullish coalescing — синтаксис, появившийся в последних версиях JavaScript и TypeScript.
Благодаря встроенной поддержке библиотеки Vuex и Composition API из Vue 3 создавать приложения Vue.js стало еще проще.
Узнайте, что нового в WebStorm — там вы найдете подробную информацию об улучшениях для JavaScript в IntelliJ IDEA 2020.1.
Теперь можно экспортировать данные в файлы Excel (.xlsx), просматривать данные в виде текста прямо в редакторе, создавать конфигураций запуска и многое другое.
Все подробности здесь: что нового в DataGrip 2020.1.
Теперь можно запускать несколько сеансов терминала одновременно, разделив окно терминала по вертикали и горизонтали. Параллельные сеансы открываются и закрываются через контекстное меню.
Теперь конфигурации запуска можно хранить в любой папке проекта, так вы сможете поделиться ими с коллегами по команде через управление версиями. Откройте диалог Run/Debug Configurations, выберите Store as project file справа вверху и нажмите на значок шестеренки. В появившемся всплывающем окне выберите, где хранить конфигурации.
IntelliJ IDEA 2020.1 поддерживает библиотеку Android Volley. IDE обеспечивает автодополнение ссылок на URL-адреса и позволяет переходить к связанным ресурсам.