ソフトウェア開発とチームコラボレーション向けの新しいプラットフォームである Space との統合が初期状態で提供されています。 ウェルカム画面の右側にある、Get from VCS から JetBrains Space の組織に接続できます。 ログインが完了すると、プロジェクトリポジトリの表示とクローン、チームメイトが書いたコードのレビュー、Space Automation スクリプトの記述を行えるようになります。
大変お待たせしました! IntelliJ IDEA で WSL 2 環境の Java プロジェクトを扱えるようになりました。 IDE が JDK インストール環境の検出、JDK のインストール、Maven / Gradle プロジェクトおよび IntelliJ IDEA のビルドシステムを使用するプロジェクトのコンパイルと実行に対応しました。
共同開発およびペアプログラミング用のサービスである Code With Me が、IntelliJ IDEA で最初から使えるようになりました。 ビデオ通話と音声通話にも対応しているため、リモートコラボレーションがレベルアップします。 同僚に連絡を取りたい場合はいつでも JetBrains IDE から音声通話やビデオ通話を直接開始できます。 Code With Me は 1:1 の会議とグループセッションの両方で動作します。また、数十人の参加者を招待できます。 これらのアップデートに関する詳細は、ブログ記事を参照してください。
Run Targets 機能は、Docker コンテナー内またはリモートマシン上のアプリケーションの実行、テスト、プロファイリング、デバッグを可能にします。 現在、IntelliJ IDEA Ultimate では Java アプリケーションや JUnit テストのほか、Maven / Gradle / Micronaut / Maven ベースの Quarkus / Spring Boot の各プロジェクトを Docker / SSH / WSL ターゲットで実行できます。 詳細については、こちらのブログ記事を参照してください。
新しい組み込みのブラウザープレビューを使用すると、HTML ファイルをすばやくプレビューできます。 プレビューを開くには、エディターの右上にあるウィジェットの IntelliJ IDEA ロゴアイコンをクリックしてください。 HTML やリンク先の CSS / JavaScript ファイルを変更すると、プレビューがその場で更新されます。
検索スコープをより詳細に調整できるようにしました。 スコープに含める、または除外する External Dependencies(外部依存関係)を設定できます。 External Dependencies のステータスを変更するには、Preferences/Settings | Appearance & Behavior | Scopes を開き、右側のボタンを使用します。
Windows のジャンプリストに対応しました。タスクバーやスタートメニューの IntelliJ IDEA アイコンを右クリックし、最近使用したプロジェクトを開けるようになりました。
JetBrains は、IDE をすべてのユーザーが難なく使用できるようにすることを優先事項の一つにしています。 このリリースでは、ウェルカム画面、Project Structure ビュー、VCS ログの UI 要素に付けるラベルの数を増やしました。 これらの要素やガターアイコンが、スクリーンリーダーが有効な場合に正しく読み上げられるようになりました。 また、macOS ユーザー向けのアクセシビリティ対応の改善にも取り組んでいます。
Windows のハイコントラストモードを使用している場合、IDE の初回起動時にハイコントラストテーマが自動的に適用されるようになりました。
プルリクエストの作成時間を短縮しました。今後は Pull Requests ビューの + アイコンをクリックし、詳細を入力するだけで済みます。 ビューの一番上にある新しいタブには、プルリクエストに関するすべての情報が表示されます。 Files タブのファイルをダブルクリックすると、IDE がエディター内で差分を表示します。 また、プルリクエストの説明文を含むプルリクエストテンプレートにも対応しました。
IntelliJ IDEA は Git のコミットテンプレートをサポートします。 独自のコミットメッセージを作成したい場合は、テンプレートを使用して、重要だと思われる情報を入力できます。 IDE はその後、このテキストを初期コミットメッセージとして表示します。
VCS に変更をコミットする前にコードインスペクションプロファイルを簡単に選択できるようになりました。 歯車アイコンをクリックしてコミットオプションを表示し、Analyze code(コードの解析)チェックボックスにチェックを入れ、Choose profile(プロファイルの選択)をクリックしてから目的のプロファイルを選択します。 すると、IDE がそのプロファイルを使用してコミット前にコードのインスペクションを実行するようになります。
バージョン 2021.1 では、Compare with branch(ブランチと比較)ダイアログで別ブランチのファイルを取得できます。 取得したいファイルを選択し、Show diff(差分の表示)の横にある新しい下矢印アイコンをクリックするだけです。
新しい Save to Shelf(シェルフに保存)アクションを使用すると、変更をローカル環境に留めたまま、変更を Shelf(シェルフ)にコピーできます。 macOS では ⇧⌘A(Windows または Linux では Ctrl+Shift+A)を押してから ‘Save to Shelf’ と入力すると、このアクションにアクセスできます。
Perforce プラグインが IntelliJ IDEA Community Edition に完全対応し、IDE にバンドルされるようになりました。 The source code for this plugin is available on GitHub.
長時間のコーディングでも難なく見ることのできるエディターフォントを選択することは重要です。 最近追加されたタイポグラフィ設定では、この選択が若干楽になり、個人に合わせて細かく調整できるようになりました。 バージョン 2021.1 では、主なフォントスタイルと太字のフォントスタイルの太さを Preferences / Settings | Editor | Fonts で微調整できます。
エディターを縦に分割するタブが複数開いている場合、その中のいずれかをダブルクリックしてエディターウィンドウを最大化できます。 ウィンドウをもう一度ダブルクリックすると、元のサイズに戻ります。
IntelliJ IDEA は Goessner または Jayway 構文を使用する JSONPath 式を新たにサポートしています。 JSON ファイルでは、Edit | Find から Evaluate JSONPath Expression(JSONPath 式の評価)を呼び出すと JSONPath にクエリを書き込むことができます。 JSONPath の記述部を含むファイルでは、同じ機能を使用して JSON 入力を追加すると、JSONPath クエリをテストできます。
IntelliJ IDEA has support for the newline-delimited JSON Lines format, which is used for working with structured data and logs. IDE は .jsonl、.jslines、.ldjson、.ndjson のファイルタイプを認識します。
プロファイラーの UI を改修しました。 Home ウィンドウの情報量が増え、プロファイラーをより迅速にプロセスに接続できるようになりました。 また、アプリケーションの *.hprof スナップショットを取得する Capture Memory Snapshot(メモリスナップショットのキャプチャー)と、リソースの消費状況を追跡する視覚化ツールをタブで開く CPU and Memory Live Charts(CPU とメモリのライブチャート)の 2 つの新しいアクションを追加しました。これらのアクションは、実行中のアプリケーションを右クリックすると使用できます。
IntelliJ IDEA は 2021 年 3 月にリリースされた Java 16 の基本的なサポートを提供しています。 このアップデートの中には、内部クラスが明示的または暗黙的に静的なメンバーを宣言して Stream.collect(toUnmodifiableList())
に変更する新機能も含まれています。現在、これは stream.toList()
に変換されます。 IDE はストリームに対し、toList()
項目をコード補完リストの先頭に表示します。
IntelliJ IDEA は、要素数が負の配列が初期化されている場合に警告を表示できます。 また、Arrays.copyOf()
および Collection.toArray()
メソッドを認識します。 さらに、IDE は Integer.longValue
や Byte.intValue
などの整数のアンボクシングや変換用のメソッドもサポートしています。
for-each ループのパラメーターの型を絞り込むことで、不要なキャストを回避できるようになりました。 また、フィルターがマッパーによって生成されるものと同じ値を使用している場合に .filter()
および .map()
の呼び出しを入れ替えることで、コードの構文を単純化できるインスペクションを追加しました。 さらに、より多くのケースをカバーするため、StringBuffer
を StringBuilder
に置換するインスペクションが更新されました。
連鎖したビルダーメソッド用の新しいフォーマットオプションは、可読性の向上に役立ちます。 フォーマッターは、Chained method calls(連鎖メソッド呼び出し)ドロップダウンリストの Preferences/Settings | Editor | Code Style | Java | Wrapping and Braces で構成できます。 Builder methods(ビルダーメソッド)オプションを使用すると、IDE がビルダーメソッドと認識するメソッドのリストを作成し、各メソッドを別々の行に配置することができます。 Wrap first call(最初の呼び出しを折り返す)チェックボックスを選択すると、最初のビルダーメソッドも別の行に表示されます。 インデントの手動追加にも対応しています。また、Keep builder methods indents(ビルダーメソッドのインデントを維持)チェックボックスにチェックを入れると、IDE はインデントをそのままの形で残します。
コードがその場で解析されるため、エラーや警告をかなり高速に検出できます。 旧バージョンと比較すると、IntelliJ IDEA 2021.1 は問題のあるコードをほぼ即座にハイライトするようになりました。 コード補完機能が高速化され、フリーズに対する IDE の応答性が向上しました。
Kotlin のコード補完機能は、型パラメーターを要求する関数を提供します。 このような関数を選択すると、IDE は先行するコードに適切な型パラメーターを追加します。
IntelliJ IDEA のコードカバレッジランナーが、インライン関数とコルーチンで Kotlin を完全にサポートするようになりました。
Change Signature(シグネチャーの変更)リファクタリングの UI を改修し、追加したパラメーターをデフォルトに設定するための新しいチェックボックスを追加しました。
IntelliJ IDEA のデバッガーを使用すると、Kotlin の get 式を評価して結果を Variables ビューに表示できます。 また、そこからソースに移動することもできます。
UML クラスダイアグラムが JVM にコンパイルされる Kotlin に対応し、Java および Kotlin クラスの両方を表示できるようになりました。 近日中に他の Kotlin バックエンドに対しても UML ダイアグラムをサポートする予定です。
Scala 開発者は常に高カインド型を使用するとは限りませんが、使用する場合はスタイルを使用したがります。 型の不一致ツールチップがカインド型をサポートするようになりました。
このリリースでは、機械学習ベースで Scala のコード補完を行えるようにしました。 この機能は、Settings | Editor | Code Completion | ML | Scala で有効にできます。
モジュールに加えて、コンパイルチャートにフェーズとユニットを表示できるようになりました。このため、コンパイルに関するより詳細な情報を取得できるようになりました。 Build ツールウィンドウを開き、Chart ノードを選択してから希望する詳細度の Level を選択するだけです。
The sbt-idea plugin makes it possible to develop IntelliJ Platform plugins using Scala and sbt. また、開発をより簡単にする Project Wizard テンプレートが組み込まれています(この機能は Plugin DevKit を使用しています)。
Maven プロジェクトをインポートする際に設定をカスタマイズする機能を復活させました。 このオプションを有効にするには、File | New Projects Settings | Preferences for new Projects | Build, Execution, Deployment | Build Tools | Maven で Show settings dialog for new Maven projects(新規 Maven プロジェクトの設定ダイアログを表示)を選択してください。
IDE が http:// プロトコルの使用箇所をハイライトし、https:// への変更を提案できるようになりました。 このインスペクションはデフォルトで有効になっています。 Preferences/Settings | Editor | Inspections | Security – Link with unencrypted protocol(暗号化されていないプロトコルとリンク)で無視する URL のリストに URL を追加したり、プロジェクト全体またはその一部に対してインスペクションを無効にできます。
HTTP クライアントからリクエストが実行されると、このリリースでの UI と UX の更新が盛り込まれた Services ツールウィンドウにレスポンスが表示されます。 返ってきた HTML / JSON / XML は折りたたみ可能で、その本文のコピー、行番号の非表示、表示フォーマットの選択が可能です。また、レスポンスの最上部と最下部にすばやくスクロールできます。
https:// プロトコルに SSL クライアント認証を使用する場合、HTTP クライアントの SSL 設定を構成できます。 そのためには、Add environment file(環境ファイルの追加)をクリックして Private を選択します。 IDE が SSL 構成を追加できるファイルを自動的に作成します。 このファイルでは、コード補完が役に立ちます。
Spring / Micronaut / Quarkus / MicroProfile プロジェクトの作成ウィザードを改修しました。 わずが 2 ステップで新規プロジェクトを開始できます! 基本的な情報はすべて最初の画面に適切にまとめ、2つ目の画面にフレームワーク固有の設定を表示するようにしています。 新しい UI はより洗練されており、より単純明快にプロジェクトを作成できるようになっています。
JPA エンティティを含むプロジェクト用に、デザインを一新したアイコンをガターに追加しました。 このアイコンはクリック可能で、エンティティとその属性に対応した最も便利なアクションを含むリストを表示します。 また、Kotlin とマルチモジュールプロジェクト向けに JPA のサポートを改善しました。
Jakarta EE 9 プロジェクトの JPQL クエリの記述と実行に、JPA コンソールを使用できるようになりました。
ライトテーマをご利用の方に朗報です。UML ダイアグラムをすっきりと読みやすくする新しいカラースキームが導入されました。
Swagger は外部ファイル参照($ref)の仕様をサポートしています。 さらに、仕様ファイルの Structure(構造)ビューには Security、Callbacks、Examples を含む他のノードが表示されます。
IntelliJ IDEA が Web アプリケーションの DOM 要素を検出できる実験的なツールを新たにサポートしました。 このツールを使用する前に、Selenium UI Testing プラグインをインストールしてください。
この新しいツールには、Tools | Generate Selenium Page Object(Selenium ページオブジェクトの生成)からアクセスできます。 ダイアログが開いたら、Web ページのアドレスを入力し、任意の DOM 要素を選択してから下のエリアに追加してください。 そのエリアで、要素の言語やフレームワークを変更できます。 ページオブジェクトの生成機能は Java、Kotlin、Groovy のほか、Selenium、FluentLenium、Selenide、Geb、Atlas、JDI Light のようなフレームワークをサポートしています。
各フレームワークのコードテンプレートはカスタマイズ可能です。
ガター内の Run アイコンをクリックして Delete を選択するだけで、現在のコンテキストにあるすべてのクラスターリソースをエディターから削除することができます。
Settings/Preference | Languages & Frameworks | Kubernetes で、Kustomize バージョンのドロップダウンリストから新しい Kustomize 3.7.0 を選択できるようになりました。
kubectl get <resource type> -o yaml
コマンドの戻り値を処理したり、リソースをリストに配置したりする必要がある場合は、IDE が kind: List をサポートするようになりました。 リスト内の各リソースで、ラベル名の変更、コーディング支援、ガターアイコンによるナビゲーションを使用できます。 また、List をマルチドキュメントの YAML ファイルに変換できるようになりました(逆変換にも対応)。
独自の values.yaml ファイルを作成できるようになりました。 IDE は名前に “values” を含むファイルを values ファイルと認識します。 チャートテンプレートが使用する values ファイルを設定できるダイアログを開くには、コンテキストメニューから Configure Helm Parameters(Helm パラメーターの設定)、Helm Lint、Helm Template(Helm テンプレート) のいずれかを選択します。 また、このダイアログの Additional values(他の値)エリアに値を手動で貼り付けて追加することもできます。
Run/Debug Configuration(実行/デバッグ構成)ダイアログがより簡潔になり、さらに調整しやすくなりました。 必要なすべてのビルドオプションを追加するには、Modify options(オプションの変更)をクリックします。 実行オプションを追加するには、Modify(変更)をクリックします。 IDE は互換性を確保するため、それぞれのオプションを検証するようになりました。 また、Docker Compose に存在するすべてのオプションをサポートしています。 コード補完が、Dockerfile の Run Options、Image ID or name に対して機能するようになりました。
プロジェクトのビルドを高速化する BuildKit のサポートを実験的に開始しました。 さらに、名前付きステージをマルチステージの Dockerfile から分離してビルドするのが簡単になりました。 ステージ名の横にあるハンマーアイコンをクリックするだけで、IDE が BuildKit を使用してイメージをビルドします。
マルチステージの Dockerfile を使用する際、ステージを折りたたんでステージ間に目立つ区切り線を表示できるようになりました。
Dockerfile の実行をすばやく停止できます。 Services ツールウィンドウを開き、実行中の項目を選択してからコンテキストメニューを呼び出し、Stop Deploy(デプロイを停止)クリックするだけです。
バインドマウントを使用する際、ホストマシン上のパスをよりすばやく入力できるようになりました。 補完メカニズムにより、Run/Debug Configurations(実行/デバッグ構成)の Bind mount(バインドマウント)オプションでマクロと環境変数を選択できます。
コード補完がイメージ名に対して機能するようになりました。
Inspecting your CSS code with Stylelint is now easier. 数回クリックするだけで、この評価の高いリンターを使用して問題箇所を修正できるようになりました。 ファイル内の問題箇所にマウスカーソルを合わせるか、キャレットを配置したあと、Alt+Enter を押してから Stylelint: Fix current file(Stylelint: 現在のファイルを修正)を選択するだけです。 また、Preferences / Settings | Languages & Frameworks | Style Sheets | Stylelint の対応するフィールドで構成ファイルのパスを指定できるようになりました。
MDN documentation is now bundled with IntelliJ IDEA. これによって MDN の Web サイトとの接続に関する問題を回避し、エディター内に HTML / CSS / JavaScript ファイルをより高速に表示できるようになります。 また、エディター内に表示されるドキュメントの情報がさらに拡充されました。例えば、JavaScript API のサポート対象ブラウザーバージョンに関する情報を確認できます。
When working with style sheets, you can now check the specificity of your selectors – just hover over a selector that you want to check. あるいは、セレクターにフォーカスがある状態で F1/Ctrl+Q を押し、この情報をドキュメントポップアップに表示することもできます。
以下の更新やデータベースツールに関するその他の更新に関する詳細は、こちらの新機能を参照してください。
オブジェクトを変更する際に権限を編集するための UI を追加しました。 データベースエクスプローラーのユーザーに対して Cmd/Ctrl+F6 で呼び出せる Modify user(ユーザーの変更)ウィンドウに、オブジェクトに対する権限を付与するための UI が実装されました。 これらの更新は、PostgreSQL / Redshift / Greenplum / MySQL / MariaDB / DB2 / SQL Server / Sybase に対応しています。
単純なステートメントをデータベースエクスプローラーから直接生成できる、ライブテンプレートというソリューションを導入しました。 独自のテンプレートを追加するか、SQL ノードの Preferences/Settings | Editor | Live Templates で既存のテンプレートを編集できます。
ナビゲーションを単純化しました。SQL のオブジェクトに対して Go to declaration(Ctrl/Cmd+B)を呼び出すと、データベースツリーではなく DDL に遷移するようになりました。 また、Select in database tree(データベースツリーで選択)アクションのショートカットを追加しました(Windows/Linux 用は Alt+Shift+B、macOS 用は Opt+Shift+B)。
データのソート処理を改善しました。 新しい ORDER BY フィールドは、WHERE フィールド(以前は フィルター と呼ばれていたもの)と同様の動きをします。使用する句を入力して、それをグリッドのクエリに適用します。 クライアント側でソート処理を使用したい場合は(この場合、IntelliJ IDEA はクエリの再実行も現在ページ内のデータのソートも行いません)、Sort via ORDER BY(ORDER BY でソート)のチェックを外してください。 もう一つの更新は、デフォルトの状態ではソート処理を「重ねる」ことができなくなったことです。データをソートしたい列名をクリックすると、他の列を条件にしたソートは無効になります。
世界一有名なショートカット(Ctrl/Cmd+C/V/X)でデータソースのコピー、切り取り、貼り付けを行えるようになりました。 データソースをコピーすると、クリップボードにコピーされた XML をメッセンジャーで共有することができます。 また、Paste(貼り付け)アクションを使用して別の場所から XML コードを貼り付けることもできます。 データソースの切り取りと貼り付けを 1 つのプロジェクトの中で行った場合は、単に移動されるだけです。パスワードは要求されません。 その他すべてのケースではパスワードが要求されます。
MongoDB コレクションのデータを編集できるようになりました。 ステートメントのプレビューも使用できます。 より柔軟な編集を行えるよう、UI からフィールドの型を変更する機能を導入しています。 この機能は、フィールドのコンテキストメニューか、値エディターのいずれかで実行できます。
IntelliJ IDEA Community Edition は、一般に公開されている共有インデックスを組み込みでサポートしています。 専用のプラグインをインストールする必要はありません。 その代わり、IDE の共有インデックス機能を使用できます。
IntelliJ IDEA がすべての Android Studio 4.1.1 のアップデートをサポートするようになりました。
IntelliJ IDEA が bnd-maven-plugin から OSGi ファセットの設定をインポートできるようになりました。