IntelliJ IDEA 2024.1 では、ワークフローを効率化するためのさまざまなエキサイティングなアップグレードが導入されています。IntelliJ IDEA Ultimate は、行全体のコード補完を誇り、コード行全体に対して包括的なコード認識提案を提供します。Java 22 のサポートにより、最新の言語機能との互換性が確保されます。ターミナルが全面的に改善されたことでコマンドライン操作が強化され、エディターの固定行によりコードベースをスムーズに移動できるようになりました。バージョン 2024.1 では、IDE のさまざまな部分に数十の改善が加えられています。以下でご確認ください。
IntelliJ IDEA Ultimate 2024.1 には、Java および Kotlin 用の行全体コード補完が付属しています。この機能は、IDE にシームレスに統合された高度なディープラーニングモデルによって実現されています。コンテキスト分析に基づいてコード行全体を予測して提案することで、コーディング効率を高めます。これらの提案は、さまざまな言語やフレームワーク向けに特別にトレーニングされた特殊な言語モデルによって実現され、完全にローカルデバイス上で実行されるため、外部サーバーとの通信を必要とせずにデータが安全に保たれます。この機能は、IntelliJ IDEA Ultimate ライセンスサブスクリプションに含まれています。詳細については、こちらのブログ投稿(英語)を参照してください。
IntelliJ IDEA 2024.1 は、2024 年 3 月にリリースされた JDK 22 の機能セットのサポートを提供します。これには、名前のない変数とパターンの最終反復、文字列テンプレートと暗黙的に宣言されたクラスの 2 番目のプレビュー、およびインスタンス main
メソッドのサポートが含まれます。さらに、この更新では、プレビュー状態の super(...)
に先行する新しいステートメントのサポートが導入されています。詳細については、こちらのブログ投稿(英語)を参照してください。
IntelliJ IDEA 2024.1 は、コマンドラインタスクを効率化するために、外観と機能の両方を強化した改善版ターミナルを発表しました。このアップデートにより、使い慣れたツールの外観が一新され、コマンドが個別のブロックに分割され、ブロック間のスムーズな移動、コマンドの補完、コマンド履歴への簡単なアクセスなどの機能が拡張されました。詳細については、こちらのブログ投稿(英語)を参照してください。
大きなファイルの操作や新しいコードベースの探索を簡素化するために、エディターに固定行を導入しました。この機能により、スクロールしても、クラスやメソッドの先頭などの主要な構造要素がエディターの上部に固定されます。これにより、スコープが常に表示され、固定された行をクリックすることで、コード内をすばやく移動できます。
AI Assistant には、テスト生成とクラウドコード補完の改善、コミットメッセージのカスタムプロンプト、コードスニペットからのファイル作成機能、エディター内コード生成の更新など、いくつかの貴重なアップデートが加えられました。詳細については、こちらのブログ投稿(英語)を参照してください。
バージョン 2024.1 では、AI Assistant がバンドル解除され、個別のプラグイン(英語)として利用できるようになりました。この変更は、AI を活用したテクノロジーの使用に関する意思決定の柔軟性を高め、作業環境における好みや要件をより細かく制御できるようにする必要性から生まれました。AI Assistant には引き続きアクティブな JetBrains AI サブスクリプションが必要です。
コードのハイライトや補完などの基本的な IDE 機能が、プロジェクトのインデックス作成中に Java および Kotlin で機能するようになり、起動時のエクスペリエンスが向上します。さらに、プロジェクトの読み込み中に クラスに移動および シンボルに移動を使用してコード内を移動することもできます。
新しいプロジェクトを構成する際の認知負荷を軽減するために、 新しいプロジェクトウィザードのレイアウトを少し調整しました。言語リストが左上隅に配置され、最も人気のあるオプションを見つけやすくなりました。
IDE を 90%, 80%,, 70% まで縮小できるようになり、IDE 要素のサイズを上下に柔軟に調整できるようになりました。
IntelliJ IDEA 2024.1 では、文字列テンプレートに言語を挿入する機能が導入されています。これは、必要な言語を自動的に選択するアノテーションを使用して行うか、 言語または参照の挿入インテンションアクション (Alt+Enter) を使用してリストから言語を手動で選択することで行うことができます。後者の方法を使用する場合、IDE は言語アノテーションを挿入することを提案します。挿入を実行した後、インテンションアクションのリストを再度呼び出し、挿入されたフラグメントを別のエディターペインで開いて編集することを選択できます。
ロギングは日常の開発の重要な部分であるため、IntelliJ IDEA のユーザーエクスペリエンスを強化するためにさまざまな更新を導入しました。コンソールのログメッセージから、生成するコードに簡単に移動できるようになりました。さらに、IDE は必要な場所にロガーを追加することを提案し、ロガーインスタンスがスコープ内にない場合でも、ロガーステートメントの挿入を簡素化します。詳細については、こちらのブログ投稿(英語)を参照してください。
コードを整理し、エラーのない状態に保つために、Java 用の新しいインスペクションとクイックフィックスを実装しました。IDE は、明確さのために Long.hashCode()
または Double.hashCode()
メソッドの呼び出しに置き換えることができるビット演算を検出するようになりました。さらに、新しいクイックフィックスにより、コードベースの要件に基づいて暗黙的なクラス宣言と明示的なクラス宣言の切り替えが簡単になります。もう 1 つの新しいインスペクションは、一致するコードフラグメントに既存の静的メソッドを使用することを提案し、追加の API を導入せずにコードを簡単に再利用できるようにします。さらに、IDE は、実行されることのない到達不能コードを検出して報告するようになりました。
IntelliJ IDEA 2024.1 は、マルチリリース JAR ライブラリを使用した強化されたユーザーエクスペリエンスを提供します。異なるバージョンのクラスを使用する場合、 宣言に移動機能により、現在のモジュールの言語レベルに基づいて JAR から適切なバージョンが選択されます。さらに、 クラスに移動機能により、クラスのバージョンに関する追加情報が提供されます。デバッグ中に ステップインを使用すると、IDE はモジュールの言語レベルではなく、JDK バージョンに対応するクラスに移動します。
バージョン 2024.1 では、読みやすさを向上させるために 競合が検出されましたダイアログを改善しました。ダイアログ内のコードがエディター内のコードを反映し、競合をより明確に把握できるようになりました。また、IDE はウィンドウサイズの調整を自動的に保存して、将来使用できるようにします。さらに、リファクタリングワークフローを効率化するためにボタンとその動作を更新しました。ダイアログはキーボードから完全にアクセス可能になりました。つまり、ショートカットと矢印キーを使用してシームレスに操作できます。
名前変更のプロセスをより簡単かつ直感的にするために、変更されたコード要素の上に表示される新しいインレイヒントを実装しました。コードベース内のすべての参照を新しいバージョンに更新するには、このヒントをクリックして変更を確認するだけです。
IntelliJ IDEA 2024.1 では、新しい Kotlin K2 モードが導入され、組み込みの K2 Kotlin コンパイラーを活用して Kotlin コード分析が強化されています。このアップデートでは、今後の Kotlin 機能との互換性が保証されるだけでなく、コード分析の安定性も向上し、IDE 機能の品質と信頼性が向上し、アプリケーション全体のパフォーマンスが向上します。詳細(英語)。
バージョン 2024.1 以降、IDE は、明示的に指定されていない限り、すべてのプロジェクトのデフォルトオプションとして公式の Kotlin スタイルガイドを一律に適用します。既存のプロジェクトで、明示的に構成されていない古いコードスタイルが使用されている場合、IDE は自動的に Kotlin コーディング規則のコードスタイルに切り替え、この変更を知らせる通知を表示します。望ましくない書式変更を防ぐために、このコードスタイル移行ガイド(英語)をよく理解しておくことをお勧めします。
バージョン 2024.1 は、静的インポートを正確に保持し、ソースコードに表示されているとおりに転送されることを保証します。これは、ネストされたオブジェクト、列挙型、Java 静的インポートを処理する場合に特に役立ちます。
新しいリリースでは、Scala 3 の特定の構文ケースの処理方法に関する多くの問題を修正しました。改善点には、禁止されている修飾子の組み合わせを認識する機能、インデントの深さを計算する機能、インデントを壊さずに切り取りと貼り付けの操作を行う機能、終了マーカーを構文構造に関連付ける機能などがあります。また、デバッガーでの Scala 3 のサポートも改善され、using
および given
キーワードと一緒に使用する場合や unapply
シグネチャーと一緒に使用する場合など、一部の特殊なケースが自動補完によって正確に処理されるようになりました。
Scaladoc ポップアップとクイックドキュメントポップアップでクラス、トレイト、メソッド宣言がハイライトされる方法に、多くの小さな改善と修正を加えました。ネストされたジェネリクスパラメーターが正しくハイライトされるようになり、フィールドアクセス修飾子も表示されます。さらに、三重中括弧で囲まれた Scaladoc ブロック内のコードは、標準の Scala コードと同じようにハイライトされるようになりました。
これまでは、コンパイラーベースのハイライト表示を使用しているときに別のエディターに切り替えると、コードが自動的に再コンパイルされていました。バージョン 2024.1 では、これを変更しました。コードが再コンパイルされるかどうかは、エディターにフォーカスがあるかどうかによって決まります。これにより、コンパイラーベースのハイライト表示がソースファイルと .class
ファイルへの外部変更に迅速に反応し、有効なコードが赤になる状況を回避できます。
IDE は、新しい SBT プロジェクトに .gitignore
ファイルを追加するようになりました。 ビルドには sbt を使用するを使用して Scala/JVM アプリケーションを初めて実行するときに例外がスローされる問題を修正し、インポート時にモジュールのすべての推移的依存関係が直接依存関係として挿入されるようにしました。
古い Play Framework バージョン (2.8 以下) と JDK 17 間の互換性の問題に対処するために、Play ウィザードで互換性のないバージョンの Play と JDK の使用について通知する警告を導入しました。
新しいアイコンを導入しました。1 つは 新しいプロジェクトウィザードの Scala 言語用、もう 1 つは 表示 | ツールウィンドウの SBT 用です。さらに、角が丸くなり、配置が改善され、インレイヒントの表示方法が微妙に強化されています。さらに、 設定 | エディター | CodeStyle ヘルプページに Scala ドキュメントを追加しました。ワークシートでは、Scala 2.13.12 を使用すると、ビルドウィンドウでコンパイルエラーが再び正しく報告されるようになり、最初のコードコンパイル前にインポートが未使用として誤ってマークされることがなくなりました。さらに、X-Ray 機能を固定して、Ctrl キーを放した後でもアクティブなままにできるようになりました。
IntelliJ IDEA 2024.1 では、新しいレビューモードを実装することで、GitHub ユーザーと GitLab ユーザーの両方に強化されたコードレビューエクスペリエンスを導入しています。エディターに統合されたこの機能により、作成者とレビュー担当者の直接的なやり取りが容易になります。プル / マージリクエストブランチを確認すると、レビューモードが自動的にアクティブになり、ガターにピンクのマーカーが表示され、コード変更がレビュー可能であることが示されます。これらのマーカーをクリックすると、元のコードが表示されるポップアップが表示されるため、変更内容をすばやく識別できます。ガターアイコンを使用すると、新しいディスカッションをすばやく開始したり、既存のディスカッションを表示したり非表示にしたりできます。また、コメントに簡単にアクセスできるため、簡単にレビュー、返信、対応できます。この変更の詳細については、ブログ投稿(英語)を参照してください。
IntelliJ IDEA 2024.1 は、ブランチ関連の変更に重点を置いたビューを提供することで、コードレビューワークフローを効率化します。GitHub、GitLab、Space では、Git ツールウィンドウ内の別の ログタブで特定のブランチの変更を確認できるようになりました。これを行うには、 プルリクエストツールウィンドウでブランチの名前をクリックし、メニューから Git ログで表示を選択します。
IntelliJ IDEA 2024.1 は、GitHub プルリクエストと GitLab マージリクエストのレビューコメントに反応を投稿するサポートを導入し、すでに選択可能な絵文字のセットが用意されています。
Git ツールウィンドウの ログタブに新しい列が導入され、CI システムによって実行された GitHub コミットチェックの結果を簡単に確認できるようになりました。
変更をバージョン管理システムに正常にプッシュすると、IDE はプッシュが成功したことを通知し、プル / マージリクエストを作成するアクションを提案する単一の通知を表示します。
コードレビューワークフロー内で保留中の更新についてお知らせする視覚的なインジケーターを導入しました。注意が必要な変更がある場合、ツールウィンドウのアイコンにドットが表示されます。表示されていないプルリクエストにも青いドットが表示されるため、コードレビュープロセスで更新を見逃すことがありません。
ファイルサイズが大きすぎるためにバージョン管理が拒否されるのを回避するために、IDE には、そのようなファイルのコミットを防止し、制限を通知するコミット前チェックが含まれるようになりました。
合併するダイアログのドロップダウンメニューに、 無関係な履歴を許可するオプションが追加されました。このオプションを選択すると、共通の履歴がない場合でも 2 つのブランチをマージできるようになります。
Git ツールウィンドウでは、 すべてのブランチを表示ボタンがブランチフィルターに置き換えられ、指定されたブランチ内のファイルに加えられた変更を確認できるようになりました。また、ツールバーの向きを調整し、水平に配置して使いやすさを向上させました。
一時的にコミットされていない変更を保存するためにスタッシュを使用するユーザーのために、 コミットツールウィンドウ内に便利なアクセスのための専用タブを導入しました。スタッシュとシェルフの両方を使用する場合は、 設定 / 環境設定 | バージョン管理 | Git の対応するチェックボックスを使用して、結合された スタッシュとシェルフタブを有効にするオプションがあります。
差分ビューアーでは、比較プロセス中に無視するフォルダーとファイルを指定し、関連する変更のみに焦点を当てることができるようになりました。比較結果に表示したくないファイルまたはフォルダーを右クリックし、コンテキストメニューから 結果から除外を選択します。
ブランチポップアップでは、アクションとリポジトリ別に検索結果をフィルタリングして、バージョン管理システム内をより迅速かつ正確に移動できるようになりました。
使用状況の統計を分析した結果、 どこでも検索ダイアログから Git タブをデフォルトで削除しました。このタブを戻したい場合は、 設定 / 環境設定 | 詳細設定 | バージョン管理 . Git の どこでも検索で Git タブを表示チェックボックスをオンにしてください。
IntelliJ IDEA は、pom.xml
ファイルを解析してプロジェクトモデルを構築するようになりました。これにより、すべての依存関係を含む完全なプロジェクトモデルがバックグラウンドで構築される間に、数秒で実用的なプロジェクト構造を取得できるようになり、完全な同期が完了するのを待たずにプロジェクトに取り掛かることができます。
IntelliJ IDEA 2024.1 のリリースにより、待望の Maven Shade プラグインの名前変更機能のサポートが追加されました。IntelliJ IDEA は名前変更ワークフローを認識し、シェーディングされた JAR とその依存関係を操作するときに正確なコードのハイライトとナビゲーションを提供します。
クイックドキュメントポップアップにより、ソースコードを簡単にダウンロードできるようになりました。ライブラリまたは依存関係のドキュメントを表示しているときにソースコードにアクセスする必要がある場合は、F1 を押すだけです。更新されたポップアップには、必要なソースファイルをダウンロードするための直接リンクが提供され、ワークフローが効率化されます。
Maven リポジトリのリストとそのインデックス作成ステータスは、以前は Maven 設定内にあったが、Maven ツールウィンドウに表示されるようになりました。
このバージョン以降、IntelliJ IDEA は 4.5 より古いバージョンの Gradle を使用するプロジェクトをサポートしなくなり、IDE はサポートされていないバージョンの Gradle を使用するプロジェクトに対して Gradle 同期を実行しません。
IntelliJ IDEA 2024.1 は、ラムダ関数または return ステートメントを含む行にブレークポイントを設定するための、より便利なワークフローを提供します。ガターをクリックしてブレークポイントを設定すると、IDE は追加のブレークポイントを設定できるインラインマーカーを自動的に表示します。各ブレークポイントは個別に構成できるため、高度なデバッグ機能が使用可能になります。
ライブラリ呼び出しは、 デバッグツールウィンドウの呼び出しスタックでデフォルトで折りたたまれるようになりました。これにより、コードを参照するときにフォーカスを維持できます。ただし、ライブラリ呼び出しシーケンスを確認する必要がある場合は、グループを展開して、それに応じてフレームを調べることができます。リストを表示するには、ツールバーの フィルターアイコンを使用するか、コンテキストメニューを呼び出して フレームをライブラリから非表示オプションを無効にします。
バージョン 2024.1 により、IntelliJ IDEA は包括的なテストカバレッジの達成に一歩近づきました。この更新では、コード内のどの条件文がテストで完全にカバーされていないかを特定することに重点を置いています。現在、IntelliJ IDEA は、カバーされていない条件がある行を表示し、カバーされていない条件付きブランチまたは変数値を指定します。この機能はデフォルトで有効になっており、 設定 / 環境設定 | ビルド、実行、デプロイ | カバレッジで制御できます。
コードカバレッジ設定は、 実行構成ポップアップから 設定 / 環境設定 | ビルド、実行、デプロイ | カバレッジに移動されました。この変更により、カバレッジランナーを選択したり、特定のコード行をカバーしているテストを追跡するなどの高度な機能を有効にしたりするために、テスト実行ごとに構成を個別に更新する必要がなくなります。
JaCoCo ランナーが CI/CD パイプラインで収集するコードカバレッジデータのインポート、参照、分析が簡単になりました。レポートが表示されていない場合は、 カバレッジツールウィンドウに JaCoCo レポートをインポートするための直接リンクが表示されるようになりました。また、ウィンドウのツールバーを更新して、JaCoCo レポートを .exec
ファイルとして取得できるインポートアイコンを追加しました。
IntelliJ IDEA Ultimate では、アプリケーションコンテキストからのすべての Bean の自動補完が提供され、自動的にオートワイヤリングされます。bean がコンストラクターを介して依存関係をオートワイヤリングする場合、関連するフィールドもコンストラクターを介して自動的にワイヤリングされます。同様に、依存関係がフィールドまたは Lombok の @RequiredArgsConstructor
アノテーションを介してインジェクションされる場合、新しい bean はフィールドを介して自動的にワイヤリングされます。
Spring モデルダイアグラムへのアクセスが簡単になりました。bean ラインマーカーを使用するか、Spring クラスのインテンションアクション (Alt+Enter) を使用して呼び出すことができます。Spring ダイアグラムに新しいアイコンを導入し、コンポーネント、コントローラー、リポジトリ、構成 Bean などの Spring ステレオタイプの視覚化を強化しました。さらに、デフォルトでは非表示になっているライブラリの Bean の表示を簡単に切り替えられるようになりました。
バージョン 2024.1 の HTTP クライアントでは、PKCE 認証コードやデバイスグラントフローなど、より多くの認証オプションが提供されています。また、PKCE 要求中にトークンを取得するための code_challenge
生成と code_verifier
受け渡しを自動的に処理するほか、トークンと認証要求の追加パラメーターもサポートしています。HTTP クライアントの低レベルネットワークライブラリである Netty へのアップグレードにより、SSL、プロキシ、HTTP/2 のサポートが有効になり、HTTP/2 の実装が容易になります。さらに、HTTP クライアントのツールバーが新しい UI のスタイルに合わせて改善され、より洗練された統一感のある外観になっています。
どこでも検索ダイアログが拡張され、URL 検索結果が関連するプロジェクトに表示される エンドポイントタブが導入されました。現在、IDE はプロジェクトに Spring、Micronaut、Ktor、Quarkus テクノロジーが存在することを検出すると、このタブを自動的に含めます。
Spring WebClient や REST Assured テストなど、一般的なシナリオすべてで HTTP ヘッダーが簡単に完了できるようになりました。予想される値が検出されると、補完ポップアップが自動的に表示されます。
JSON スキーマの検証と補完の背後にあるコードを最適化しました。その結果、IDE はこれらのタスクをより高速に処理し、メモリ消費を削減できるようになりました。Azure パイプラインを使用した実際のファイルでは、スキーマインスペクションが 10 倍高速になりました。
Quarkus 実行構成用の新しい設定エディターを導入しました。 実行 / デバッグ構成ダイアログでは、Maven プロジェクトと Gradle プロジェクトの両方で UI が改善され、 実行プロファイルや 環境変数などの一般的な設定に簡単にアクセスできるようになりました。利便性のために、 実行ツールウィンドウのツールバーに追加された新しいアイコンから、Quarkus Dev UI に簡単にアクセスできます。
IntelliJ IDEA Ultimate 2024.1 は OpenRewrite を統合し、IDE の既存のリファクタリング機能を拡張し、コードの品質、一貫性、保守性を向上させるツールキットを提供します。OpenRewrite のレシピを使用すると、レガシーコードを最新化し、パフォーマンスを最適化し、新しい Spring Boot バージョンへのアップグレードなどの複雑な移行タスクを処理できます。
WireMock サポートは、IDE 内からインストールするか、JetBrains マーケットプレイス(英語)から取得できるプラグインを介して実装されています。この統合には、JSON 構成のスキーマ補完、 エンドポイントツールウィンドウから WireMock スタブファイルを生成する機能、エディターから直接サーバーを起動できる組み込みの実行構成が含まれます。この追加により、テストデータサーバーまたはスタブをすばやく作成し、Web UI とマイクロサービスの開発を簡素化できます。
IntelliJ IDEA Ultimate 2024.1 では、インフラストラクチャの作成、管理、スケーリングのプロセスを簡素化する、改善された Terraform サポートが提供されます。IDE では、terraform init
を実行するための明示的な提案によって初期化が効率化され、3,900 を超えるサードパーティの Terraform プロバイダー向けに拡張されたコード補完機能が提供されます。さらに、IDE では Terraform のテンプレート言語 (tftpl) のサポートが導入され、動的なテンプレート作成が可能になり、推奨するプログラミング言語とシームレスに統合するオプションも提供されます。詳細については、ブログ投稿(英語)を参照してください。
このリリースでは、データエディターに待望のローカルフィルタリング機能が導入されました。データベースにクエリを送信せずに、列の値で行をすばやくフィルタリングできるようになりました。このローカルアプローチは現在のページにのみ影響しますが、範囲を拡張する必要がある場合は、ページサイズを調整したり、すべてのデータを取得したりできます。すべてのローカルフィルターを無効にするには、指定された ローカルフィルターを有効にするアイコンの選択を解除します。
IntelliJ IDEA Ultimate 2024.1 は、手動でセッションを選択する必要性を排除することで、クエリの実行を効率化します。代わりに、ファイルを添付するには、セッションではなくデータソースを選択するだけです。さらに、関数を起動するときにセッションを選択する必要がなくなり、コンソールまたはファイルから直接関数を実行できるようになりました。これらの変更は、ツールの学習曲線を最小限に抑え、不要な手順を減らし、全体的な使いやすさを向上させることを目的としています。
クイックドキュメントポップアップが大幅に強化されました。コードブロックの構文のハイライトがサポートされるようになりました。TypeScript では、インターフェースメンバー、列挙定数、型エイリアス本体が表示されるようになりました。 さらに表示リンクを使用して、型メンバーの完全なリストを展開し、参照されている型に移動できます。さらに、ダイアログの上部にあるページングコントロールを使用して、インターフェース、型エイリアス、列挙、関数、その他のエンティティの複数の宣言間を移動できるようになりました。
IntelliJ IDEA Ultimate 2024.1 では、React の新しいクイックフィックスがいくつか導入されており、これにより props と状態を即座に作成できます。これらのクイックフィックスは、ショートカット Alt+Enter を使用して適用できます。
ステータスバーに新しい 言語サービスウィジェットが表示され、現在のファイルとプロジェクトでアクティブな言語サービスに関する情報が提供されます。このウィジェットから直接、サービスを再起動したり、設定に移動したりできます。