IntelliJ IDEA の新機能

Java

Java 12

IntelliJ IDEA 2018.3には、Java 12の初期サポートが付属しています! 今すぐIDEで生文字列リテラルJEP 326 (英語))をプレビューして、便利なインスペクションやクイックフィックスを活用しましょう。例:複数行の文字列リテラルを生の文字列リテラルに変換したり、その逆に変換したり、冗長な先頭または末尾のバッククォート( `)などを検出します。さらに学習したい方に(英語)

法的通知をここで読む

Java 12はまだリリースされていないことに注意してください。Java 12のサポートを有効にするには、ベータJava仕様の法的通知の条項に同意しなければなりません。Java Community Process(JCP)に基づいて開発された初期ドラフト仕様の実装は、テストおよび評価目的でのみ提供されます。JCPの仕様と互換性があります。

より多くの重複を検出

IntelliJ IDEAは、変数名が異なるなど、より複雑なケースでも重複箇所をすばやく見つけることができるようになりました。IDEはdiffビューアーに重複を表示するため、互いに比較することができます。

JavaストリームAPIの改善

IDEは、後続のminコールの前に不要なソートされた呼び出しが行われる状況を検出します。冗長ソートされたコールを削除するためのクイックフィックスも提供されています。

データフローの強化

さらなる条件でカバーされている条件と呼ばれる新しいデータフローベースのインスペクションを作成しました。最初の条件が2番目の条件でカバーされているため不要な状況を検出します。IDEは、そのような冗長な状態を解消するための迅速な修正を提供します。

抑制されたインスペクションの冗長な使用

IntelliJ IDEAは、@SuppressWarning注釈、// noectionpection行コメント、/ ** noinspection * / JavaDocコメントの冗長な使用を検出するようになりました。抑制されたインスペクションが関連するメソッド本体、クラス、またはステートメント内の警告を処理しなくなった場合、IDEは警告を出すだけでなく、不要な注釈やコメントを削除するためのクイックフィックスを提供します。

エディター

複数行TODOコメント

IntelliJ IDEA 2018.3は現在、複数のTODOコメントをサポートしています。最初のすべてのTODOコメント行がエディターで強調表示され、TODOツールウィンドウにリストされます。複数行のTODOコメントの2行目からインデントを追加するだけで、IDEは通常のコメントと区別します。

特定のファイルおよびフォルダーのコード書式を無効にする

フォーマット、インポートの最適化、コードの再配置から、特定のファイルをロックすることが可能になりました。実際には、書式設定が関係する操作から明示的または暗黙的に行われます。スコープを作成し、フォーマットしてはいけないファイルを追加するだけです!

新しいインデントステータスバー

IntelliJ IDEAは、現在のファイル内のインデントのサイズを新しいインデントステータスバーに表示します。ファイルのインデントがプロジェクトの現在の設定と一致しない場合は、アスタリスクがインデント表示に追加されます。これで、ステータスバーのポップアップで現在のインデントを制御するアクションを選択できます。

EditorConfigサポートの改善

IDEは構文の強調表示とEditorConfigファイル用のコード補完を提供するようになりました。新しいインデントステータスバーポップアップを使用して、使用中のEditorConfigファイルに簡単にナビゲートすることもできます。

バージョン管理

GitHubプルリクエスト

IntelliJ IDEAにはGitHub Pull Requestの初期サポートが付属しています。新しいGitHubプルリクエストツールウィンドウからGitHubリポジトリ内のすべてのプルリクエストをプレビューします。差分を使用して変更をプレビューするか、コンテキストメニューからプルリクエストからローカルブランチを作成し、通常のブランチとしてマージします。

「ここまでのヒストリー」ですべてのヒストリーを表示

以前は、ここまでのヒストリーアクションは選択したコミットまでのファイルの履歴しか表示しませんでしたが、ツールバーのすべてのブランチを表示に切り替えることで、後でファイルに何が起こったかを表示できます。ファイルが後で削除された場合、このような状況を見つけ出すのは簡単な作業ではないため、これは特に便利です。

VCSログの高度なナビゲーション

コミットハッシュからVCSログタブのコミットに移動した後、またはハッシュ/ブランチ/タグへジャンプアクションを使用した後で、VCSログにいる間に、前方および後方ナビゲーションアクションを使用できるようになりました。左または右の矢印キーを使用して、子コミットまたは親コミットに移動します。

空白を無視

これで、IDEはマージ中に空白の変更を無視できます。リビジョンのマージダイアログには、無視の新しいドロップダウンメニューがあり、マージ時に空白の変更を隠すかトリムするオプションがあります。

あるGit ブランチから別のGit ブランチにファイルをコピーする

IntelliJ IDEA 2018.3を使うと、ブランチの比較ダイアログのファイルタブから入手できる便利な新しい ブランチからアクションを使って、あるGit ブランチから別のGit ブランチにファイルを簡単にコピーすることができます。

コミットダイアログのブランチ名

IDEはファイルをコミットするブランチの名前をコミットダイアログの中に表示します。これをGit、Mercurial、SVNに実装しました。

ファイル・ヒストリー・タブで差分プレビュー

差分プレビューは、バージョン管理ツールウィンドウのファイル・ヒストリータブで利用できるようになりました。

Gitサブモジュールのサポート

IntelliJ IDEA 2018.3はGitサブモジュールをサポートするようになりました! プロジェクトをクローンまたは更新し、変更をコミットし、差分を表示し、競合を解決します。

検索および置換

新しいどこでも検索

IntelliJ IDEA 2018.3は、プロジェクトとIDEの上をナビゲートする新しい方法を紹介します。再加工したどこでも検索を暖かく歓迎してください! 実際には、どこでも検索アクションの検索クラスに移動ファイルに移動シンボルに移動など、他のナビゲーションダイアログをすべて組み込んでいるため、どこでも検索だけではありません。以前のように、これらのナビゲーションダイアログには、それぞれ独自のキーボードショートカットからアクセスできます。

パス内検索で複数行のフラグメントを検索

これで、パス内検索/パス内置換 ダイアログで複数行のフラグメントの検索/置換が可能になりました。複数行の検索を実行するために、正規表現を使用する必要がなくなりました。

新しい構造検索と置換ダイアログ

IntelliJ IDEA 2018.3は、更新された合理化された構造検索と置換ダイアログを提供します。これで、自動補完は検索フィールドの定義済みテンプレートで機能します。検索アイコンにあるドロップダウンメニューで検索履歴を表示できます。スコープの設定がより簡単で柔軟になりました。複雑な変数の編集フォームは、更新されたダイアログにあるフィルタパネルに置き換えられました。

プラグインの設定ページ

環境設定設定)のプラグインのページを更新して、プラグインの管理、インストール、アンインストール、アップデートを簡単にしました。これで、プラグインを名前で検索するだけでなく、タグで検索することもできます。ダウンロード、名前、評価、機能、アップデートなどの結果を並べ替えることができるようになりました。

なんでも実行

なんでも実行

IntelliJ IDEA 2018.3には、新しいなんでも実行アクション(ダブルCtrl)を使用してIDEでコマンドを実行する、新しい集中型の方法が付属しています。新しいアクションを使用して、MavenとGradleを含む実行構成を起動したり、Gradleタスクを実行したり、ターミナルコマンドを実行したりします。

なんでもデバッグ

Shiftキーを押すだけで、なんでも実行ダイアログがなんでもデバッグモードに切り替わります。

Kotlin

IDEにバンドルされているKotlinプラグインがv1.3(英語)に更新されました

Kotlin 1.3のサポート

ちょうど最近、Kotlinには、言語、ツーリング、およびライブラリーの主要なリリースがありました。IntelliJ IDEAを使用すると、KotlinプロジェクトをKotlin 1.3に移行し、不要なコードで必要な変更をすべて実行して、ライブラリーの最新の状態に準拠させることができます。

マルチプラットフォームプロジェクトサポートの強化

Kotlin 1.3では、表現力と柔軟性を向上させ、共通コードの共有を容易にするために、マルチプラットフォームプロジェクトのモデル(英語)は完全に作り直されました。IntelliJ IDEAは最も一般的なユースケースをカバーするプロジェクト例のセットを提供します。

新しいKotlin インスペクションとクイックフィックス

IntelliJ IDEA 2018.2のリリース以来、Kotlinプラグインには、30種類以上の新しいインスペクション、クイックフィックス、インテンションがあり、コードをさらに効果的に書くのに役立ちます。

Spring & Spring Boot

Spring Boot 2.1のサポート

IntelliJ IDEA 2018.3は、最近リリースされたSpring Boot 2.1を完全にサポートしています。 @DataSize で注釈が付けられた設定値は、デフォルトの @DataSizeUnit(指定されている場合)を使用して検証されます。

Spring Initializrの改善

Spring Initializrを使用してプロジェクトを作成すると、IDEは適切なプラグインのインストールまたは有効化を提案し、選択したすべてのテクノロジのサポートが存在することを確認します。

KotlinのJPAおよびSpringデータサポートの改善

IDEは自動的にJPQLをクエリ文字列に挿入し、エンティティ名とパラメータの補完を提供します。KotlinにSpringデータインターフェースを書くことができ、IntelliJ IDEAは使用するエンティティを理解します。IDEはメソッド名のスマートな補完とパラメータのクイックフィックスを提供します。

アクセシビリティ

コントラストの高いテーマ

すべてのユーザーにとって素晴らしいエクスペリエンスを提供することを約束します。IntelliJ IDEA 2018.3を使用して、新しいハイコントラストテーマなどのアクセシビリティの改善をいくつか展開しています。

スクリーンリーダーのサポート強化

スクリーンリーダーのサポートを強化し、行番号、VCS注釈、デバッガ、ガターアイコンを読み込むことができます。

JVMデバッガ

javaプロセスへのアタッチ

デバッグエージェントなしで起動されたJavaプロセスにアタッチします。プロセスにアタッチすると、現在のスレッドの状態と変数の値を表示し、メモリビューを使用することができます。

ローカルプロセスにデバッガを接続する場合は、実行ツール・ウィンドウで使用できる便利な新しいデバッガの接続アクションを使用できます

リモート接続を自動的にリスンし直す

現在、リモートプロセスをデバッグしている間、IDEは自動的に構成を再開できます。リモートデバッグ構成に新しい自動再始動オプションを有効にするだけです。

リモート JVMの非同期スタックトレース

IntelliJ IDEA 2018.3は、リモート JVMで非同期スタックトレースをサポートするようになりました: エージェントのリモート使用を開始するには:

  • /lib/rt/debugger-agent.jarをリモートマシンにコピーします。
  • -javaagent:debugger-agent.jarをリモート JVMオプションに追加します。

非同期注釈の設定ダイアログで独自の非同期注釈を定義することができます。

すべてのブレークポイントを削除するアクション

IntelliJ IDEA 2018.3には、プロジェクト内のすべてのブレークポイント、またはファイル内のすべてのブレークポイントを削除する便利な新しいアクションが付属しています。環境設定 (設定) | キーマップ | デバッガーのアクションでは、これらの独自のショートカットを割り当てることができます。

Maven

これですべてのビルドアクションと実行アクションをMavenに委譲することができます。環境設定 (設定) | ビルド、実行、デプロイ | ビルド・ツール | Maven | ランナーに移動し、新しいIDEのbuild / runアクションをmavenに委譲するオプションを選択します。

ターミナル

組み込みターミナルが改善されたため、プロジェクトまたはIntelliJ IDEAを終了すると、IntelliJ IDEA 2018.3はターミナルタブ名、現在の作業ディレクトリー、およびシェル履歴を保存します。

また、ターミナルタブを他のツールウィンドウタブのように再設計しました。

実行構成

Java実行構成のマクロ

IntelliJ IDEAでは、'Application' と 'npm' の実行構成でマクロを使用できるようになりました。プログラムの引数フィールドには、定義済みのマクロを入力できます。

テキストファイルを入力として使用する機能

テキストまたはログファイルを入力として使用する場合は、実行/デバッグ構成 ダイアログで次からの入力をリダイレクトオプションを選択し、入力データを持つファイルへのパスを指定します。

実行構成は、デフォルトでは単一のインスタンスとしてのみ実行されます

デフォルトでは、実行構成は1つのインスタンスとしてのみ実行されます。ただし、実行/デバッグ構成ダイアログに並行実行可能にするオプションがあり、同じ実行構成の複数のインスタンスを並行して実行したい場合に有効にすることができます。

JavaScript & TypeScript

JavaScriptのオートインポート

IntelliJ IDEAは、プロジェクトの依存関係のシンボルのインポートをJavaScriptファイルに自動的に追加できるようになりました。これは、パッケージ内にTypeScript定義ファイルがあるか、パッケージにESモジュールとして記述されたソースが含まれている限り動作します。

改善されたAngularサポート

コード補完およびAngularテンプレートの変数、パイプ、非同期パイプ、およびテンプレート参照変数の定義への移動がより正確になりました。

Node.js ワーカースレッドのサポート

IntelliJ IDEAでNode.js ワーカーをデバッグできるようになりました - Node.js、10.12以上、および --experimental-worker フラグを使用していることを確認してください。IDEはワーカースレッドのAPI用にコード補完を提供します。

ESLintとTSLintによる柔軟性の向上

linterの設定ファイルから重大度レベルを無効にし、linterのすべての問題をエラーまたは警告として表示できます。

TSLintエラーの場合、Altキーを押しながら右矢印キーを押します。これで特別なTSLintディセーブルコメントをこのルールに追加するオプションがあります。

Kubernetes

Helm リソースファイルのサポート

IDEはHelm リソーステンプレートファイルを正しく解決し、よく知られている編集サポートを提供します:コード補完、名前変更リファクタリング、もちろんインスペクションとクイックフィックスです。

Helmリソースファイル内のナビゲーション

IDEを使用すると、グラフの値: yamlファイルの値の使用方法からその宣言に移動できます。ガターアイコンを使用して、ラベル定義とセレクタ間をナビゲートできます。さらに、values.yamlファイルには、オーバーライド/オーバーライドする値にナビゲートするための新しいガターアイコンがあります。

Helm テンプレート結果プレビュー

IDEは、Helmテンプレートレンダリングの結果をdiffでプレビューできるようになりました。コンテキストメニューから新しいKubernetes | Helm テンプレート アクションを選択するだけです。

Helm 依存関係更新

新しいHelm 依存関係更新アクションを使用して、外部tgz依存関係をダウンロード(または既存のものを更新)し、プロジェクトツリーに表示することができます。

データベース・ツール

Cassandraデータベース

今回のリリースでは、さらにNoSQLデータベースCassandraのサポートが追加されました。

SQL コード補完の改善

今度はコード補完はGROUP BYの非集約フィールド、SELECT、MERGE、INSERT INTOテーブル変数、ストアドプロシージャの名前付きパラメータ、SUM()およびAVG()、FILTER(WHERE)節の数値フィールド、およびSQLiteのフィールドタイプ。

テーブル・エイリアスを導入する

テーブル・エイリアスを導入するアクションを使用してテーブルに直接エイリアスを作成することができます。このエイリアスはテーブルの名前の使用箇所を自動的に置き換えます。

シングル接続モード

新しいコンソールはそれぞれ新しい接続を意味します。しかしIntelliJ IDEA 2018.3では、データソースに対して1つの接続しか使用できず、すべてのコンソールでこの1つの接続を使用することができます。データベースツリー内の一時オブジェクトはすべて表示できます。また、別のコンソールで同じトランザクションを使用することもできます。それをオンにするには、データ・ソースのプロパティー | オプション | シングル接続モードに移動します。

選ぶ
あなたのエディション

Ultimate

Webおよび企業の開発用

Community

JVMおよびAndroid開発用
ライセンス有償のオープンソース、Apache 2.0
Java、Kotlin、Groovy、Scala
Android ?
Maven、Gradle、SBT
Git、SVN、Mercurial
Perforce
JavaScript、TypeScript ?
Java EE、Spring、遊び、Grails、その他フレームワーク ?
データベースツール、SQL
重複を検出しています ">?