Установка intellij idea

Содержание

Эргономичная среда

Каждый аспект IntelliJ IDEA разработан для вашего удобства и продуктивности. Основной принцип нашей IDE — ничто не должно отвлекать разработчика от творческого процесса.


Все необходимое прямо в редакторе

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

Всплывающие окна помогают увидеть дополнительную информацию, не отвлекаясь от контекста. Например, сочетание клавиш Ctrl+Shift+I покажет определение элемента, на котором стоит курсор.

Для генерации кода не нужно проходить через сложные диалоги или заполнять огромные формы.

Сочетания клавиш для любого действия

В IntelliJ IDEA есть специальные сочетания клавиш практически для чего угодно, включая быстрое выделение и переключение между редактором и окнами инструментов.

Когда вы открываете любое окно инструментов сочетанием клавиш, фокус ввода перемещается в окно, так что вы сразу можете использовать в нем команды клавиатуры. Чтобы вернуться к редактору, нажмите Esc.

В окне Project, вы можете не только перемещаться по существующим элементам, но и создавать новые — просто нажмите Alt+Ins.

Эргономичный интерфейс

В IntelliJ IDEA есть быстрый поиск по всем спискам, деревьям и всплывающим окнам: вы мгновенно перейдете к списку объектов, содержащих текст, который вы набираете.

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

View responses from web services

When you execute an HTTP request, IntelliJ IDEA automatically saves the response into a separate file under the .idea/httpRequests/ directory. You can view the 50 most recently stored responses and navigate to the corresponding files using the . If the request was executed from a scratch file, the link to its response output is also added below the original request:

The cookies received through a response are automatically saved into the dedicated http-client.cookies file under the .idea/httpRequests/ directory. The number of cookies that can be saved is limited to 300. The name and value of a cookie are automatically included in each subsequent request to the URL that matches the domain and path specified for the cookie, provided that the expiry date has not been reached.

The two response files will be opened in the Differences viewer allowing you to compare their contents:

Navigation and search

IntelliJ IDEA provides quick navigation not only inside source code files but also throughout the entire project.

One of the most useful shortcuts that is worth remembering is double Shift that brings up the Search Everywhere dialog: start typing and IntelliJ IDEA will look for your search string among all files, classes, and symbols that belong to your project, and even among the IDE actions.

Here are some of the most useful navigation shortcuts:

Action Shortcut
Search everywhere Double Shift
Go to file Ctrl+Shift+N
Go to class Ctrl+N
Go to symbol Ctrl+Alt+Shift+N
Go to declaration Ctrl+B

See Source code navigation for more hints on how to navigate through the source code, and the most useful shortcuts that help you quickly switch between the editor and various tool windows, switch focus, jump to the Navigation bar, and so on.

License activation

You can evaluate IntelliJ IDEA for up to 30 days. After that, you need to buy and register a license.

If IntelliJ IDEA does not have HTTP access outside your local network, you will not be able to use the JetBrains Account for signing in. However, you can generate an offline activation code that will be valid during your subscription term.

If your organization has at least 50 active subscriptions or licenses of JetBrains products, you can use the Floating License Server to activate IntelliJ IDEA instances within your company network. Keep in mind that the License Server itself requires internet access for connecting to the JetBrains Account.

Scala

Auto-import for Implicits

While you can use View | Show Implicit Hints to display implicits (even absent ones), importing an implicit was never an easy task.

The new Auto-import for implicits action works exactly like Auto-import for unresolved references. The automatic popup makes the feature more discoverable, but it’s also possible to disable the auto-popup and invoke the Import… quick-fix with Alt + Enter (more info).

Indentation-based brace handling

Adding and removing braces is an integral part of Scala programmers’ everyday life. To make the task easier, we first added an intention to wrap and unwrap expressions, but it had to be invoked manually. Then we supported adding and removing complementary braces automatically.

Now we can do even better – both braces are added and removed automatically and on the fly based on code indents. In this way, you can try significant indentation while still keeping the braces, even in Scala 2. To take advantage of this feature, just don’t think about the braces and let the IDE do the work.

First-class companions

In Scala, a companion class or trait and the companion object have a special relationship. We have long reflected this in Project View, but otherwise we used to treat companions as any other classes or objects.

Now we show navigable gutter icons for companions (configurable in Settings | General | Editor | Gutter Icons). You can also navigate to a companion by using Go To on a , , or keyword. Companion object members can now easily be auto-completed or auto-imported.

In-editor Scaladoc rendering

Scaladoc markup is easy to edit, but it’s not so easy to view – you have to wade through * columns, tags, and macros. Now we can render Scaladoc right in the editor, so it looks crisp and concise (you can toggle rendering in Editor | General | Appearance).

We’ve also improved Scaladoc rendering in the Quick Documentation popup – it can now properly handle paragraphs, lists, and macros.

View changes history for a file or selection

IntelliJ IDEA allows you to review changes made to files or even fragments of source code. The Show History and the Show History for Selection commands are available from the main VCS menu and from the context menu of files.

The change history for a file is displayed in the dedicated History tab of the Version Control tool window Alt+9.

The change history for a selection of code is displayed in a separate window, in the form of the differences viewer.

You can use the toolbar buttons to compare the selected revision with the local version, compare classes from the selected revision, checkout the selected revision from your VCS, annotate the selected revision, and so on:

Item Tooltip and Shortcut Description
Refresh Click this button to refresh the current information.
Show DiffCtrl+D Click this button to compare the selected revision of a file with its previous revision in the Differences Viewer.
Show All Affected Files Alt+Shift+A Click this button to open the Paths Affected in Revision dialog where you can view all files that were modified in the selected revision.
Show All Branches Click this button to display changes from branches other than the current one.
Presentation Settings Click to choose the amount of information you want to see in the History view. You can also select the Show Commit Timestamp option if you want IntelliJ IDEA to show the commit timestamp instead of the time when a change was authored.
Show Details Click this button to show the commit message for the selected revision.
Open in GitHub Click this button to open the page that corresponds to the selected commit on GitHub.

Java

Java 15 지원

Java 15는 9월에 출시될 예정이지만 IntelliJ IDEA 2020.2는 이미 이에 대한 준비를 마쳤습니다. Records(기록) 기능의 지원이 업데이트 되었으며 이제 그 두 번째 테스트 버전을 선보입니다. 또한 sealed 클래스에 대한 기본 지원도 추가되었습니다. 물론 IntelliJ IDEA에서 텍스트 블록도 완벽하게 지원합니다.

관련 문제에 대한 인레이 힌트

외부 사용 위치가 있는 클래스, 메소드 또는 필드의 시그니처를 변경하여 오류가 발생하면 IDE에서 인레이 힌트로 알려줍니다. 관련 문제에 대한 인레이 힌트를 클릭하면 IDE가 Find(검색) 도구 창을 열어 외부 파일에서 발생하는 모든 관련 문제 목록을 표시합니다.

여러 구조 검색 및 바꾸기 검사를 생성

IDE를 사용하면 Structural Search and Replace(구조 검색 및 바꾸기)를 사용하여 특정 패턴과 일치하는 코드 블록을 찾아서 필요한 경우 교체할 수 있습니다. IntelliJ IDEA 2020.2에서는 여러 구조 검색 템플릿을 검사로 만들 수 있습니다. 각 SSR 검사에 대해 심각도 수준을 지정하고 설명을 추가하여 개별적으로 활성화 또는 비활성화할 수 있습니다.

예외 스택 추적 분석이 데이터 흐름 분석으로 보완되었습니다. 스택 추적을 클릭하면 IDE가 코드에서 예외가 나타나는 정확한 위치를 사용자에게 알려주며 예외가 발생한 이유를 찾는 데 도움이 되는 제안을 제안합니다.

Stream API 메소드에 대한 자동 완성 기능 향상

IntelliJ IDEA 2020.2는 Stream API와 더 원활하게 작동합니다. 을 입력한 다음 스트림에 올바른 작업을 입력할 필요 없이 컬렉션 자체 내에 스트림 메소드 이름을 입력하기 시작하면 IntelliJ IDEA가 을 자동으로 삽입합니다. 이는 모든 스트림 작업에 적용됩니다.

변수 삽입 범위

IntelliJ IDEA 2020.2를 사용하면 Introduce Variable(변수 삽입) 리팩토링이 변수의 사용 위치를 중간 범위에서 선택적으로 교체할 수 있습니다. 이제 하나만 또는 모든 항목을 선택하도록 제한받지 않고 다양한 교체 옵션을 선택할 수 있습니다. 각 선택 항목을 마우스로 가리키면 에디터에서 새 변수로 교체할 호출을 강조 표시합니다.

JavaScript и TypeScript

Новые интеншены для деструктуризации в JavaScript и TypeScript

В IntelliJ IDEA 2019.1 появился целый набор рефакторингов и интеншенов, которые помогут вам использовать деструктуризацию в коде на JavaScript и TypeScript.

Замена функции, возвращающей Promise, на асинхронную функцию с async/await

Вы можете автоматически заменить функцию, которая возвращает Promise с вызовами .then() и .catch(), на асинхронную функцию с async/await. Просто нажмите Alt-Enter на имени функции и выберите действие Convert to async function. Это действие доступно для TypeScript, JavaScript и Flow.

Обновленная документация для CSS и HTML

Во всплывающем окне документации для CSS и HTML (F1 / Ctrl-Q) теперь отображаются описания с сайта MDN, в том числе информация о поддержке свойств, тегов и атрибутов в разных версиях браузера.

Усовершенствованная консоль отладчика JavaScript


Интерактивная консоль отладчика в инструментальном окне Debug для JavaScript и Node.js теперь отображает объекты в виде дерева, а также позволяет менять оформление сообщений с помощью CSS и группировать их, используя методы console.group() и console.groupEnd(). Кроме того, сообщения можно отфильтровать по типу.

フレームワークとテクノロジー

Jakarta EE 9 のサポート Ultimate

当社は 9 月にリリース予定の Jakarta EE 9 に対応しており、すでに Jakarta EE で使用できるすべての機能をサポートしています(CDI、JPA、Batch、Bean Validation、JSF、JAX-RS、WebSocket、Servlet、JSP、JSON-P、JSON-B、Security、EJB および JTA の各仕様などを含みます)。

Java Enterprise プロジェクトウィザード Ultimate

Java EE 8 または Jakarta EE 9 のプロジェクトを作成する必要がある場合は、New Project ウィザードを使用して実行できるようになりました。 新しい Jakarta EE プロジェクトを数ステップで作成できます。 Java のバージョン、ビルドツール、拡張機能、その他のオプションを選択してセットアップできます。

Quarkus 構成ファイル(.properties および YAML)のサポート Ultimate

Quarkus 構成ファイルを扱いやすくするため、IDE がコード補完とハイライトの機能を提供し、.properties および YAML 構成ファイルの両方で未使用のコードをグレー表示するようになりました。 また、設定ファイルから直接設定済みの Bean にジャンプしたり、そこから戻ってきたりできます。

Quarkus CDI サポートの改善 Ultimate

IDE の現在のバージョンでは、注入された Bean に対応したガター移動機能と Quarkus 簡略化構文で完全に機能する更新版のインスペクションを使用できます。 さらに、IntelliJ IDEA 2020.2 は @DefaultBean および @AlternativePriority アノテーションと、修飾子のみのインジェクションをサポートしています(@Inject を使用する必要はありません)。

Swagger UI のサポート Ultimate

新たに追加された Swagger UI 統合を利用し、IntelliJ IDEA のエディターに組み込まれたパネルで OpenAPI をプレビューできるようになりました。 これはテストを単純化する素晴らしいアップデートです。

Swagger Diff Ultimate

IDE が改良され、OpenAPI 仕様間の構造的な差分を計算できるようになりました。 IntelliJ IDEA 2020.2 は Swagger/OpenAPI の仕様を認識し、JSON または YAML ファイルをその構造に従って比較するため、検出した差分をプレビューできます。 そのためにはコンテキストメニューから Compare Open API Specifications を選択するか、Search Everywhere ダイアログからこのアクションを呼び出してください。

Micronaut 対応のプロジェクト生成 Ultimate

他にも New Project ウィザードと Micronaut フレームワーク向けの有益なアップデートがあります。 新しい Micronaut プロジェクトをウィザードから直接作成できるようにしました。 段階を追ってプロジェクトを構成し、すぐに作業を開始できます。

Micronaut と Amazon SQS API のメッセージキューをサポート Ultimate

Micronaut アプリケーションで RabbitMQ か Kafka による非同期通信を使用しているユーザー向けのアップデートです。 ガターアイコンを使用してメッセージキューとトピックを移動し、使用箇所を検索し、名前を補完できます。 Amazon SQS API に対しても同じ機能一式を使用できます。

JAX-RS および MicroProfile REST クライアントの HTTP リクエスト生成 Ultimate

HTTP リクエストの作成とテストを簡単にするため、IntelliJ IDEA は JAX-RS および MicroProfile の HTTP リクエストを自動生成し、それを組み込みの REST クライアントで開きます。 プロジェクトでエンタープライズフレームワーク(Spring、JAX-RS、Retrofit、OkHttp、Micronaut)のいずれかを使用している場合、インテンションアクションを使用して任意の URL で HTTP リクエストを生成することもできます。

Scala

Подсветка for-генераторов

В IntelliJ IDEA 2019.1 мы расшили поддержку for-генераторов: для них теперь доступны подсветка ошибок, неявные подсказки и действия GoTo / Quick Definition / Quick Documentation.

Действие Find Usages для неявных определений

Действие Find Usages можно вызывать для неявных определений, методов apply/unapply, методов for-генераторов и типов Single Abstract Method (SAM).

Теперь, даже если у -файлов Scala нет исходников, их можно декомпилировать в Java.

Выбор версии Scalafmt

В версии 2018.2 мы добавили поддержку инструмента форматирования Scalafmt, а в этом релизе расширили ее возможности. IntelliJ IDEA не только позволяет использовать любую версию Scalafmt, но и поможет ее скачать.

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

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

В этом релизе мы значительно улучшили подсветку ошибок по нескольким направлениям:

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

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

Поддержка баз данных Greenplum, Vertica и Apache Hive

IntelliJ IDEA поддерживает новые базы данных:

  • Greenplum — аналитическая СУБД на основе PostgreSQL.
  • Vertica — колоночная база для хранения больших объемов данных.
  • Apache Hive — хранилище данных на основе платформы Hadoop, позволяющее запрашивать и анализировать данные.

Обновленный диалог соединения

Мы обновили внешний вид диалогового окна соединения и добавили несколько важных настроек. В поле «Startup script» можно вписать SQL-запрос, который будет выполняться при каждом создании подключения. Кроме того, можно установить время ожидания в секундах, по истечении которого IDE будет автоматически разрывать соединение, или задать интервал отправки запросов для поддержания соединения в рабочем состоянии.

Встроенные инструменты для разработчиков

Чтобы максимально упростить ваш рабочий процесс, IntelliJ IDEA предлагает большой набор инструментов из коробки: декомпилятор, просмотрщик байт-кода, FTP и многое другое.

Интеграция с системами контроля версий

В IntelliJ IDEA реализован универсальный интерфейс для работы с основными системами контроля версий, включая Git, SVN, Mercurial, CVS, Perforce и TFS. Среда разработки позволяет просматривать историю изменений, управлять ветками и разрешать конфликты слияния.

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

IntelliJ IDEA поддерживает Maven, Gradle, Ant, Gant, SBT, NPM, Webpack, Grunt, Gulp и другие инструменты сборки. Такая интеграция позволяет автоматизировать процессы компиляции, упаковки, запуска тестов, развертывания и другие действия.

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

IntelliJ IDEA упрощает процесс юнит-тестирования. IDE предоставляет инструменты запуска тестов и анализа покрытия кода и поддерживает все популярные фреймворки для тестирования, включая JUnit, TestNG, Spock, Cucumber, ScalaTest, spec2 и Karma.

Декомпилятор

В IntelliJ IDEA есть встроенный декомпилятор для Java-классов. Если вам нужно заглянуть в библиотеку, для которой у вас нет исходного кода, вы можете легко сделать это — без каких-либо внешних плагинов.

Терминал

В GoLand есть встроенный терминал. В зависимости от вашей операционной системы вы можете использовать prompt, Far, powershell или bash. Нажмите Alt+F12 для вызова терминала и выполняйте любые команды прямо из IDE.

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

Используйте умные возможности GoLand для редактировании SQL, подключайтесь к базам данных, выполняйте запросы, просматривайте и экспортируйте данные, управляйте схемами в удобном визуальном представлении — все это прямо из IDE.

Интеграция с серверами приложений

IntelliJ IDEA поддерживает основные серверы приложений: Tomcat, JBoss, WebSphere, WebLogic, Glassfish и многие другие.

Вы можете развертывать артефакты на серверах и отлаживать развернутые приложения прямо из IDE.

Scala

Автоматический импорт Implicits

Раньше, несмотря на возможность просмотра implicits (даже отсутствующих) через View | Show Implicit Hints, импортировать их было непросто.

Новое действие Auto-import for implicits работает так же, как автоматический импорт неразрешенных ссылок. Автоматическое всплывающее окно даст знать об этой возможности, но вы можете его отключить и вызывать действие Import… через Alt+Enter (подробнее).

Расстановка скобок на основе отступов

Scala-разработчикам часто приходится удалять и добавлять фигурные скобки. Чтобы упростить эту задачу, сначала мы добавили специальное intention-действие, но его нужно было вызывать вручную. Затем мы поддержали автоматическое добавление и удаление необязательных скобок.

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

Улучшенная поддержка компаньонов

В Scala класс или типаж компаньона и объект-компаньон имеют особые отношения. Это уже давно было отражено на панели Project, но в остальном IntelliJ IDEA обращалась с компаньонами как с любыми другими классами или объектами.

Теперь в редакторе появились навигационные значки для компаньонов (настраивается в меню Settings | General | Editor | Gutter Icons). Вы также можете перейти к компаньону, вызвав действие Go To на ключевых словах , или . Кроме того, для членов объектов-компаньонов работает автодополнение и их можно импортировать автоматически.

Рендеринг Scaladoc в редакторе


Комментарии Scaladoc легко редактировать, но не всегда удобно читать из-за обилия звездочек, тегов и макросов. Мы сделали рендеринг Scaladoc прямо в редакторе — теперь все выглядит четко и аккуратно (новый режим отображения включается в меню Editor | General | Appearance).

Мы также улучшили рендеринг Scaladoc во всплывающем окне Quick Documentation: абзацы, списки и макросы теперь отображаются корректно.

Базы данных

Редактор больших значений Ultimate

В этой версии мы добавли несколько полезных инструментов для случаев, когда в ячейке содержится очень большое значение. Теперь можно просматривать и редактировать длинные значения на отдельной панели, которая поддерживает режим переноса строк (переключается на правой панели инструментов).

Новое отображение логических ячеек Ultimate

Просматривать и редактировать ячейки с типом boolean стало гораздо удобнее. Для ввода нужного значения (, , , , или ) достаточно ввести первую букву: , , , , или . Если напечатать что-то другое, откроется выпадающий список.

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

Теперь результаты запросов к базе данных можно просматривать в редакторе. Для этого нажмите кнопку DML на панели инструментов.

Java

Поддержка Java 15

Java 15 выйдет только в сентябре, но IntelliJ IDEA 2020.2 уже готова к этому. Мы улучшили поддержку записей (Records), и она вышла на второй этап preview. Кроме того, мы добавили базовую поддержку запечатанных классов (sealed classes). Ну и конечно, IntelliJ IDEA полностью поддерживает текстовые блоки.

Сообщение о проблемах в связанных файлах

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

Возможность создавать несколько инспекций в Structural Search and Replace

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

Выявление причин исключений во время выполнения

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

Улучшенное автодополнение методов Stream API

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

Варианты применения Introduce Variable

В IntelliJ IDEA 2020.2 рефакторинг Introduce Variable работает более гибко. Теперь можно выбрать разные варианты замены для разных случаев (раньше можно было заменить либо одно, либо все вхождения). IDE подсвечивает вхождения, которые будут заменены новой переменной, при наведении курсора на каждый из вариантов.

IntelliJ IDEA editions

IntelliJ IDEA comes in three editions:

  • IntelliJ IDEA Ultimate: the commercial edition for JVM, web, and enterprise development. It includes all the features of the Community edition, plus adds support for that other IntelliJ platform-based IDEs focus on, as well as support for a variety of server-side and front-end frameworks, application servers, integration with database and profiling tools, and more.

  • IntelliJ IDEA Community Edition: the free open-source edition for JVM and Android development.

  • IntelliJ IDEA Edu: the free edition with built-in lessons for learning Java, Kotlin, and Scala, interactive programming tasks and assignments, and special features for teachers to create their own courses and manage the educational process (see IntelliJ IDEA Edu).

See the IntelliJ IDEA editions comparison matrix.

Scala

Implicits の自動インポート

View | Show Implicit Hints を使用して Implicits(存在しないものも含む)を表示できますが、Implicits のインポートは容易ではありませんでした。

新しい Auto-import for implicits アクションは、未解決参照の自動インポートとまったく同じように機能します。 自動ポップアップによりこの機能は発見しやすくなりましたが、自動ポップアップを無効化して Import… クイックフィックスを Alt + Enter で呼び出すこともできます(詳細情報)。

インデントベースの波括弧処理

Scala 開発者の日常生活で、波括弧の追加と削除は欠かせないものです。 この作業を楽にするため、私たちは真っ先に式を折り返し / 折り返し解除するインテンションを追加しましたが、手動で呼び出す必要がありました。 その後、対になる波括弧の自動的な追加と削除に対応しました。

今回はこの動作をさらに改善し、コードのインデントに応じて両方の括弧がその場で自動的に追加および削除されるようにしました。 そのため、Scala 2 でも波括弧を維持しながら重要なインデントを試すことができます。 この機能を活用するには、波括弧のことは考えずに IDE に作業を任せてください。

第一級コンパニオン

Scala では、コンパニオンクラスまたはトレイトとコンパニオンオブジェクトには特別な関係があります。 これまで長らくこの関係を Project ビューに反映してきましたが、それ以外の場合はコンパニオンをその他任意のクラスかオブジェクトとして取り扱っていました。

今後はコンパニオン用に移動操作に対応したガターアイコンを表示します(Settings | General | Editor | Gutter Icons で設定可能)。 また、Go To を 、、 のいずれかのキーワードに使用することでコンパニオンに移動することもできます。 コンパニオンオブジェクトメンバーを簡単に自動補完または自動インポートできるようになりました。

Scaladoc のエディター内表示

Scaladoc のマークアップは編集しやすいですが、それほど閲覧しやすいものではありません。* カラム、タグ、マクロの山をかき分けて目を通さなければなりません。 Scaladoc をエディター内に表示できるようになったため、見た目がすっきりと簡潔になりました(Editor | General | Appearance で表示を切り替えることができます)。

また、Quick Documentation ポップアップでの Scaladoc の表示も改善しました。段落、リスト、マクロを適切に処理できるようになりました。

Gradle

Делегирование сборки и запуска можно настроить отдельно для каждого Gradle-проекта

Теперь можно делегировать сборку и запуск Gradle отдельно для каждого проекта. Если ваш проект IntelliJ IDEA состоит из нескольких проектов Gradle, вы можете настроить эту опцию для каждого Gradle-проекта. Можно установить разные значения для инструмента запуска тестов и запуска приложения для одного и того же проекта.

В новых Gradle-проектах действия сборки и запуска делегируются Gradle по умолчанию.

IDE правильно выбирает, какую тестовую задачу Gradle запускать из редактора

В IntelliJ IDEA 2019.1 мы улучшили поддержку проектов с несколькими исходными наборами Gradle, в которых выполнение теста делегировано Gradle. Теперь IDE правильно определяет, какую задачу следует выполнить при запуске определенного теста. Если таких задач несколько, IDE предоставляет список всех задач, которые можно запустить для выбранного теста.

Когда сборка делегируется Gradle, работает функция HotSwap

Теперь, когда сборка делегируется Gradle, запускается функция HotSwap и сборка проекта перезагружает классы.

HotSwap также работает, когда сборка делегируется Maven.

Silent installation on Windows

Silent installation is performed without any user interface. It can be used by network administrators to install IntelliJ IDEA on a number of machines and avoid interrupting other users.

To perform silent install, run the installer with the following switches:

  • : Enable silent install

  • : Specify the path to the

  • : Specify the path to the installation directory

    This parameter must be the last in the command line and it should not contain any quotes even if the path contains blank spaces.

For example:

ideaIU.exe /S /CONFIG=d:\temp\silent.config /D=d:\IDE\IntelliJ IDEA Ultimate

To check for issues during the installation process, add the switch with the log file path and name between the and parameters. The installer will generate the specified log file. For example:

ideaIU.exe /S /CONFIG=d:\temp\silent.config /LOG=d:\JetBrains\IDEA\install.log /D=d:\IDE\IntelliJ IDEA Ultimate

Java

Java 15 のサポート

Java 15 のリリースは 9 月に予定されていますが、IntelliJ IDEA 2020.2 はすでにその対応を行っています。 Record(レコード)機能のサポートが更新され、第 2 プレビュー段階にあります。 また、基本的な sealed クラスのサポートも追加しました。 当然ながら、IntelliJ IDEA はテキストブロックも完全にサポートします。

関連する問題のインレイヒント

外部で使用されているクラス、メソッド、フィールドのシグネチャーの変更によりエラーが発生する場合、IDE がインレイヒントで通知します。 関連する問題のインレイヒントをクリックすると、外部ファイルで発生している関連する問題のリストが Find ツールウィンドウに表示されます。

複数の Structural Search および Replace インスペクションを作成可能


IntelliJ IDEA は必要に応じて Structural Search と Replace を使用して特定のパターンに一致するコードブロックを検索および置換できます。 IntelliJ IDEA 2020.2 では、複数の構造検索テンプレートをインスペクションとして作成できます。 それぞれの SSR(Structural Search および Replace)インスペクションに対して重大度レベルの指定と説明の追加を行い、それらを個別に有効化または無効化できます。

実行時に発生する例外の原因を特定

例外のスタックトレース分析をデータフロー分析で強化しました。 スタックトレースをクリックすると、コード内で例外が発生した場所に正確に移動することができ、発生原因を突き止めるのに役立つ提案が表示されます。

Stream API メソッドの自動補完を改善

IntelliJ IDEA 2020.2 では Stream API への対応がさらに強化されています。 を入力してからストリームの正しい操作を入力する代わりに、コレクション名の直後にストリームのメソッド名を入力すると、IntelliJ IDEA が自動的に を挿入します。 これはどのストリーム操作にも機能します。

Introduce Variable の範囲

IntelliJ IDEA 2020.2 では、Introduce Variable リファクタリングを使用して選択範囲にある変数の出現箇所を個別に置換できます。 単一の出現箇所やすべての出現箇所にとどまらず、さまざまな置換オプションを選択できるようになりました。 それぞれの選択肢にマウスを移動すると、どの出現箇所が新しい変数に置換されるかがハイライトされます。

Kotlin

Встроенный Kotlin-плагин был обновлен до версии 1.3.21

Шаблон Live Template для создания метода «main» без параметров

Начиная с Kotlin 1.3 вы можете использовать функцию main без параметров. Соответственно, в новой версии IntelliJ IDEA можно создать метод main без параметров, используя шаблон «main».

Обратите внимание, что теперь сокращение «main» по умолчанию создает новую версию метода «main». Если вам нужно передать аргументы, используйте сокращение «maina»

Улучшенное преобразование строк

Интеншен «Convert concatenation to template» позволяет удалить ненужные вызовы .toString() для каждого параметра.

Для того чтобы преобразовать конструкцию, использующую лямбду с SAM, в анонимный объект, появился новый интеншен.

Compose HTTP requests

IntelliJ IDEA uses the HTTP request in Editor format, which provides a simple way to create, execute, and store information about HTTP requests. You can type them directly in the using the following general syntax:

Method Request-URI HTTP-Version Header-field: Header-value

Request-Body

To speed up composing HTTP requests, click the Add request shortcut link on top of the request’s editor panel. In the popup menu, choose the type of the request to add.

Alternatively, use live templates. In the editor, you can press Ctrl+J to view the list of available templates. For example, gtr expands to a simple GET request; mptr expands to a POST request.

To get an overview of the HTTP Client possibilities, you can explore the HTTP Requests Collection, which is a handful selection of composed requests.

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

Действия Fixup и Squash доступны на вкладке VCS Log

Действия Fixup и Squash теперь доступны в контекстном меню на вкладке VCS Log, так что вы можете быстро создавать коммиты с сообщениями fixup! и squash!

Действие cherry-pick для отдельных файлов в списке коммитов VCS

В IntelliJ IDEA 2019.1 в контекстном меню списка коммитов VCS появилось действие cherry-pick для выбранных файлов. Вызовите контекстное меню и выберите опцию «Apply Selected Changes».

Просмотр входящих и исходящих коммитов

Во всплывающем окне Branches можно видеть наличие входящих и исходящих коммитов для отдельных веток. Для этого включите опцию «Mark Branches that have incoming/outgoing commits in the Branches popup» в разделе «Preferences/Settings | Version Control | Git».

Восстановление удаленных отложенных файлов

Теперь можно просмотреть все недавно удаленные файлы и восстановить любые отложенные. Используйте новый раздел «Recently Deleted» во вкладке Shelf в инструментальном окне VCS.

Новый флажок «Uncheck all» для частичных коммитов в Git

Теперь, выполняя частичный коммит, можно снять выделение со всех фрагментов кода одним действием: используйте новый флажок «Uncheck all» на панели Diff диалогового окна Commit Changes.

Инициалы вместо полных имен в аннотациях VCS

В аннотациях VCS теперь можно включить отображение инициалов вместо полного имени автора. Кликните правой кнопкой мыши на вкладке аннотаций и выберите View | Names | Initials в контекстном меню.

Java

Поддержка Switch Expressions из Java 12 (Preview)

В IntelliJ IDEA 2019.1 появилась поддержка функции Switch Expressions из Java 12 Preview (JEP 325).

Мы подготовили для вас ряд новых инспекций и быстрых исправлений, которые упростят знакомство с Java 12. IDE обнаруживает операторы switch, которые можно заменить на улучшенные операторы или выражения, и предоставляет быстрое исправление для выполнения такого преобразования. IntelliJ IDEA также увидит дубликаты ветвей в switch и предложит автоматически их объединить. И это лишь некоторые из новых возможностей.

Улучшенный рефакторинг Extract Variable

Рефакторинг Extract Variable теперь сохраняет семантику даже лучше, чем раньше. IDE теперь умеет извлекать переменную даже из инициализатора поля, а рефакторинг Extract Variable сможет автоматически преобразовать тернарный оператор в if, если условие будет важным. Условие считается важным, если оно имеет проверку на null или проверку instanceof.

Более точная подсветка условий в тернарных выражениях

IntelliJ IDEA 2019.1 обеспечивает более точную подсветку в тернарных выражениях. Теперь IDE подсвечивает только то условие, в котором обнаружено нарушение допустимости значения null. Раньше тернарное выражение подсвечивалось целиком, даже если нарушение имело место только в одной ветви.

Благодаря этой новой функции подсветка стала более точной и в случае switch-выражений.

Улучшенный анализ математических операций

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

Вывод чистоты конструкторов из источников

IntelliJ IDEA 2019.1 лучше поддерживает аннотации @Contract. IDE теперь может автоматически определять «чистоту» конструкторов из источников.

Переход из трассировки стека к точному месту ошибки на строке

Когда вы кликаете по трассировке стека Java, IDE попытается определить точное место на строке, в которое нужно переместить курсор. Ранее это привело бы вас только к первому столбцу соответствующей строки.

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

Расширенная поддержка пул-реквестов GitHub

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

Обновленные диалоги для работы с Git

Мы обновили дизайн диалогов Merge, Pull и Rebase — взаимодействовать с ними стало удобнее. Теперь четко видно, какие Git-команды будут выполняться. Кроме того, добавлены новые параметры, например в диалоге Pull и в диалоге Merge.

Удобное сравнение веток

Теперь при сравнении двух веток, IntelliJ IDEA открывает списки их коммитов в одном представлении в редакторе. В отличие от окна VCS, в новом представлении достаточно места для полной информации о том, какие коммиты есть в каждой ветке и какие файлы затронуты изменениями.

Объединение локальных коммитов на вкладке Log

Теперь можно выбрать несколько коммитов из локальной ветки и объединить их в один. Откройте вкладку Log в окне Git, выберите локальные коммиты и действие Squash Commits. Если вы решите изменить комментарий к коммиту, все изменения в этих коммитах будут помещены в один коммит вместе с обновленным комментарием. Кроме того, теперь можно удалять коммиты из Git-лога.


С этим читают