IntelliJ IDEA 2019.2: поддержка Java 13 Preview, инструменты профилирования, новое окно сервисов и многое другое

в 10:26, , рубрики: Git, gradle, IDE, intelli, intellij idea, java, jetbrains, kotlin, Блог компании JetBrains

Привет! Традиционно рассказываем, что нового в IntelliJ IDEA 2019.2. Список большой и все равно неполный: если хочется больше подробностей, добро пожаловать на страницу What’s new in IntelliJ IDEA 2019.2.

IntelliJ IDEA 2019.2: поддержка Java 13 Preview, инструменты профилирования, новое окно сервисов и многое другое - 1

Во-первых, мы существенно ускорили запуск. Надеемся, вы заметили :)

А еще:

Java

IntelliJ IDEA 2019.2: поддержка Java 13 Preview, инструменты профилирования, новое окно сервисов и многое другое - 2

  • Java 13 выходит в сентябре, и IntelliJ IDEA уже готова работать с ней. IDE поддерживает новый синтаксис switch-выражений (JEP 354) и новую функциональность текстовых блоков (JEP 355).
  • IDE может выполнять рефакторинг Inline Method, даже если return-выражение прерывает поток выполнения.
  • Если при анализе потока данных нашлись проблемы, новое действие Find cause поможет перейти к проблемному фрагменту кода.
  • Мы объединили инспекцию для Java «Duplicated code fragment» с инструментом для других языков «Locate duplicates».
  • Автодополнение кода теперь распознает опечатки и предлагает наиболее подходящие варианты для неправильно введенного текста.
  • Теперь при работе со структурным поиском IDE мгновенно подсвечивает в редакторе все найденные фрагменты кода, соответствующие шаблону поиска.

Инструменты профилирования

  • IntelliJ IDEA 2019.2 теперь интегрируется с Java Flight Recorder на платформах Windows, macOS и Linux, а также с Async-profiler на macOS и Linux.

Окно сервисов

IntelliJ IDEA 2019.2: поддержка Java 13 Preview, инструменты профилирования, новое окно сервисов и многое другое - 3

  • В новом окне Services собраны все подключения, а также конфигурации запуска, которые вы подключили к Services.
  • IDE позволяет просматривать файловую систему запущенного Docker-контейнера (окно Services → узел Docker → вкладка Files).

Редактор

  • Управлять всеми настройками стиля кода для разных областей можно с помощью файла EditorConfig. Подробнее.
  • Благодаря встроенной интеграции с редактором TextMate доступна подсветка синтаксиса более чем для 20 языков программирования.
  • IntelliJ IDEA теперь беспроблемно работает с большими файлами.
  • Изменилось выбранное по умолчанию поведение действия Move Caret to Next Word. Теперь IDE передвигает курсор к концу текущего слова.
  • Настройка Surround a selection with a quote or brace включена по умолчанию. Если при выделенном фрагменте кода набрать кавычку или скобку, фрагмент окажется внутри кавычек или скобок.
  • По умолчанию клавиша Tab, нажатая при вводе текста, перемещает курсор за закрывающие скобки или кавычки.
  • Чтобы сделать код более читаемым, мы изменили межстрочный интервал: теперь он равен 1,2. Изменить межстрочный интервал можно в разделе Settings / Preferences | Editor | Color Scheme | Color Scheme Font.

Обновления интерфейса

IntelliJ IDEA 2019.2: поддержка Java 13 Preview, инструменты профилирования, новое окно сервисов и многое другое - 4

  • Чтобы сделать быстрые исправления более заметными, мы поменяли дизайн всплывающего окна инспекций — оно теперь не только содержит описание проблемы, но и сразу же предлагает вам исправление.
  • У окна New Class новый дизайн: теперь есть предпросмотр возможных вариантов.
  • Современный безрамочный интерфейс в Windows 10.
  • Возле элементов списков и деревьев в окне Project View отображается дополнительная информация: размеры файлов и время их изменения. Это включается в меню View | Appearance | Descriptions in Tree Views.

Gradle

  • Зависимости Gradle теперь можно просматривать в виде диаграммы: нажмите значок Show Dependencies на панели инструментов в окне Gradle (Alt+Shift+Ctrl+U в Linux и Windows / Alt+Shift+Cmd+U в macOS).
  • Внесены улучшения в анализ кода в файлах build.gradle. Автодополнение теперь работает в объявлении задач, нотации задач Gradle и даже внутри блоков зависимостей.
  • Мы усовершенствовали отображение выводимой информации об операциях Gradle, чтобы предоставлять вам информацию о текущем статусе процесса синхронизации/сборки, — теперь дерево статуса и консоль вывода информации располагаются рядом друг с другом.

Maven

  • Выводимая информация о синхронизации Maven теперь отображается в инструментальном окне Build, что делает сообщения об ошибках и прогрессе более заметными и упрощает навигацию.
  • Автодополнение работает по умолчанию в рамках зависимостей Maven в файлах pom.xml.

Контроль версий

IntelliJ IDEA 2019.2: поддержка Java 13 Preview, инструменты профилирования, новое окно сервисов и многое другое - 5

  • В IntelliJ IDEA 2019.2 появилась поддержка нативной обработки игнорируемых файлов Git. Подробнее.
  • IDE будет напоминать вам, если вы забудете включить в коммит файлы, которые обычно включаете вместе с файлами, редактируемыми в данный момент.
  • Теперь можно делать коммит из вкладки Local Changes: установите флажок Commit from the Local Changes without showing a dialog в разделе Preferences / Settings | Version Control | Commit Dialog.
  • Теперь можно смотреть файловую историю Git одной или нескольких директорий, выбранных в окне Project View.
  • При выполнении процесса merge или cherry-pick во всплывающем окне Branches есть новые опции: Abort Merge и Abort Cherry-pick.
  • Новое действие Show Diff with Working Tree показывает Diff-сравнение текущей и выбранной веток.
  • IDE теперь предлагает вам добавлять в систему контроля версий файлы, которые были скопированы в проект извне.

Kotlin

  • Поддержка JPA с Kotlin стала лучше: появилась возможность генерировать entity-классы Kotlin.
  • Действие Async stack trace теперь отображает состояние переменных на момент последней приостановки.
  • Новый режим interactive для вспомогательных файлов Kotlin автоматически показывает вам результаты по истечении определенного интервала времени без необходимости перезапускать скрипт.
  • IDE подсвечивает TODO-комментарии Kotlin в редакторе и отображает их в инструментальном окне TODO.
  • Если вы используете внешние аннотации допустимости значения null для Java, IDE предупреждает вас о неверных случаях применения аннотированных методов Java из Kotlin.

Scala

  • IDE теперь отображает подсказку по аскрипции типа и подсвечивает те части, которые не соответствуют ожидаемому типу.
  • Подсказки о несоответствии типа стали более подробными и показываются с выравниванием по вертикали, также используется отображение кода в режиме «было — стало».
  • Подсказки аннотаций типов теперь поддерживают динамическое сворачивание, всплывающие подсказки, навигацию и подсветку парных скобок.

Groovy

  • Усовершенствована поддержка синтаксиса Groovy 3.0 — теперь поддерживаются вложенные блоки кода, а фигурные скобки и стрелки в замыканиях по умолчанию выделяются полужирным шрифтом, чтобы блоки кода было легче отличить от замыканий.

JavaScript и TypeScript

  • Теперь можно заменять избыточные переменные еще одной деструктуризацией: нажмите в редакторе Alt+Enter и выберите Propagate to destructuring.
  • Теперь, когда вы переименовываете идентификатор в файле JavaScript или TypeScript, IDE группирует динамические вхождения отдельно от остальных вхождений и по умолчанию исключает их из рефакторинга.
  • Мы сделали более точное автодополнение кода для компонентов и их свойств из библиотек Vuetify и BootstrapVue.

Отладчик JVM

  • Теперь можно выбрать метод при выполнении действия Step Into.

Поддержка баз данных

IntelliJ IDEA 2019.2: поддержка Java 13 Preview, инструменты профилирования, новое окно сервисов и многое другое - 6

  • Поиск по данным.
  • Быстрое изменение размера страницы.
  • Фильтрация по источникам данных в навигации.

JetBrains Runtime

  • IntelliJ IDEA 2019.2 теперь по умолчанию работает под JetBrains Runtime 11.

Благодарим всех пользователей за то, что вы делились с нами своими мыслями и рекомендациями в комментариях на Хабре, в трекере и в Твиттере.

Команда IntelliJ IDEA

Автор: Максим Соболевский

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js