IntelliJ IDEA 2019.1ヘルプ

IntelliJ IDEA プロのヒント

このガイドは、その基本的な機能に既に精通していて、さらに知りたいIntelliJ IDEAユーザを対象としています。IntelliJ IDEAについて比較的初めての方は、この記事を詳しく読む前に IntelliJ IDEA ガイドを理解するを読むことをお勧めします。

コーディング支援

型情報

キャレットにあるシンボルに関する詳細情報が必要な場合どこから来たのか、そのタイプが何であるか、クイック・ドキュメントがあなたの役に立ちます。 Ctrl+Q を押して起動すると、これらの詳細がポップアップ表示されます。完全な情報が必要ない場合は、代わりに「型情報」アクションを使用します。選択された式のタイプのみを表示しますが、画面スペースの大部分を占めるわけではありません。

コード補完のケースの感度

デフォルトでは、IntelliJ IDEA コード補完の大文字と小文字の区別は、入力した最初の文字にのみ影響します。この戦略は、設定/環境設定ダイアログ(Ctrl+Alt+S)、エディター | 一般 | コード補完で変更することができるため、IDEをすべての文字に敏感にするか、好みに適したものに基づいて大文字と小文字を区別しないようにすることができます。

code completion

耳寄り情報 : ここでは、コード補完で自動ポップアップオプションをオフにすることもできます。これは、コード補完ポップアップを、明示的に呼び出すときにだけ表示させたい場合に意味があります。

キャレットで要素の強調表示を無効にする

IntelliJ IDEAの学習後に変更したいデフォルトについては、設定/環境設定ダイアログのエディター | 一般ページでキャレット上の要素の使用箇所を強調表示するオプションを見逃すことはできません。 Ctrl+Shift+F7 のショートカットを知っていて、単にキャレットを移動するたびにエディターの強調表示が消えたり消えるのを好まない場合は、このオプションは必要ありません。

highlight usages option

キャメルハンプ

デフォルトでは、エディターで何かを選択すると、IntelliJ IDEAは単語の大文字と小文字を区別しません。CamelCaseに従って単語を選択したい場合は、単語全体を選択するのではなく、その一部を選択すると、[設定/環境設定]ダイアログのエディター | 一般 | スマート・キーでこれを有効にすることができます。

camelHumpsOption

ヒッピー補完

IntelliJ IDEAは Ctrl+Spaceスマート補完ステートメント補完を介して基本補完を提供します。これらの機能はすべて、コード構造の実際の理解に基づいています。ただし、現在のファイルやプロジェクトの前半で使用されている単語をその文脈に関係なく示唆するような、より簡単で柔軟なロジックが必要な場合があります。この機能はヒッピー補完と呼ばれ、経由で利用可能です。

expandWord2.png
expandWord1.png

リファクタリング

リファクタリングの取り消し

IntelliJ IDEAを使用すると、コードをリファクタリングするときの結果を心配する必要はありません。便利な Ctrl+Z ショートカットを使用して元に戻すを呼び出すことによって、いつでも元に戻すことができます。

文字列フラグメントを抽出する

IntelliJ IDEAは、実行可能コードだけでなく文字列リテラルもリファクタリングすることができます。文字列の任意のフラグメントを選択し、抽出変数/定数/フィールド/パラメータを呼び出して定数として抽出し、コード全体でその使用箇所を置き換えます。

型のマイグレーション

リファクタリングするときは、通常、シンボルの名前を変更するか、コード内の文を抽出して移動します。ただし、リファクタリングすることにはそれだけではありません。例:型のマイグレーション(から入手可能)を使用すると、変数、フィールド、パラメータ、またはメソッドの戻り値(int → Stringint → Longなど)の型を変更したり、依存コードを更新したり、競合の可能性を解決したりできます。

真偽の反転

IntelliJ IDEAがタイプの移行を自動化できる場合、セマンティクスで同じことをしないでください。ブールシンボルのすべての用途を逆にするには、真偽の反転リファクタリングを使用します。

コード解析

依存構造行列

IntelliJ IDEAを使用すると、コード内のコンポーネントの依存度を分析できます。依存関係が多すぎるとさまざまな問題(英語)が発生する可能性があるため、この点に注意する必要があります。依存関係構造マトリックスアクション分析メニューから利用可能)は、モジュール、パッケージ、およびクラス間の依存関係を視覚化して探索できます。

dsm

その複雑な外観にもかかわらず、非常に使いやすいツールです。クラスやパッケージを選択し、使用されている場所と使用されている場所を確認するだけです。

構造検索と置換

構造検索と置換、またはSSRは(それを正しく使うことを学んだ後に)非常に強力で、静的コード分析とリファクタリング自動化のために使うことができます。一言で言えば、コード内の特定のパターンを検索し、パラメータ化されたテンプレートに置き換えることができます。そのために、この記事(英語)で詳しく説明するコード・パターンを定義するための独自の言語が用意されています。

この機能にアクセスするには、編集 | 検索 | 構造的検索/置換を使用します。テンプレートまたはパターンを作成する場合は、設定/環境設定ダイアログでページエディター | インスペクションをクリックし、一般ノードで構造検索インスペクションを有効にします。

ssr inspection

ユーザー・インターフェース

パンくずリストとタグツリーのハイライトを無効にする

たくさんのHTMLやXMLを扱っていて不必要な気を散らすのを避けたい場合は、エディター | 一般 | 外観のパンくずリストとタグの強調表示を無効にすることができます。

不必要なガターアイコンを無効にする

一番左のエディター列であるガターは通常、編集中のコードに関連する有用な情報を表示します。設定/環境設定ダイアログ(Ctrl+Alt+S):エディター | 一般 | ガター・アイコンで見たいものを設定することができます。

迷惑なインテンション電球を無効にする

面倒なことがもう1つあるのは、キャレットでインテンションが使用可能になるたびにエディターに表示されるインテンション電球です: それを無効にすることはもう少し難しいです:手動であなたの <IntelliJ IDEA preferences folder>/options/editor.xmlを編集して、以下の行を追加する必要があります:

<option name="SHOW_INTENTION_BULB" value="false" />

どこでも検索から使用

どこでも検索を使用すると、コード、ライブラリー、UIの一部、設定( #で設定名を付けることによって)、またはアクション名でさえ、任意のテキスト断片を文字通りどこでも見つけることができます。この機能をたくさん使用している場合は、Enter をポップアップで押すだけでIntelliJ IDEAの設定にアクセスできることが分かります。例:エディターの設定にアクセスしています:

search everywhere settings

#pluginsで検索クエリを開始すると、オンまたはオフにすることができます:

search everywhere plugins

他のタグは、#appearance#system#inspections#registry#intentions#templates、および #vcsを含む。

もう1つの興味深い事実は、どこでも検索が略語をサポートしていることです: 設定/環境設定ダイアログのキーマップページを使用して任意のアクションに短いテキストを割り当て、このテキストを入力することで、このアクションをすべての場所から呼び出すことができます:

search everywhere abbreviation

エディタータブを非表示にする

現在のタブ以外のすべてのエディタータブを閉じる必要がある場合は、Altを押したまま現在のタブの閉じるアイコン icons actions close をクリックします。

close others

エディタータブをまったく表示したくない場合は、エディター設定/環境設定のエディター・タブページに移動し、配置ドロップダウンではなしを選択します。

新しいウィンドウでファイルを開く

見つけにくいが便利な機能は、プロジェクトツールウィンドウでファイルを選択して Shift+Enterをクリックすることで、新しいウィンドウでファイルを開くことです。

パス補完を使用する

パス補完機能は、ファイル、フォルダーなどの選択を高速化できます。これは、プロジェクト構造ダイアログで新しいSDKを追加する場合や、アプリケーションサーバーのホームディレクトリーを指定する場合に便利です。

パスの入力を開始するときは、Ctrl+Space を押して候補リストを呼び出します。

completePath

ツールバーに停止ボタンと再開ボタンを追加する

ナビゲーション・バーのツールバーにStop icons actions suspend svg とResume icons actions resume svg ボタンを追加すると便利です。設定/環境設定ダイアログの外観および振る舞い | メニューおよびツールバー ページから行うことができます。

キーボードショートカットではなくマウスを使用したい場合は、この方法で現在のデバッグセッションを管理するためにデバッグツールウィンドウを開く必要はありません。

buttons on navbar

エディター

クリップボードと比較

IntelliJ IDEAには、コード、jarファイル、リビジョン、さらにはイメージのビューアーが組み込まれています。それを呼び出すには、ファイルのペアを選択し、Ctrl+Dを押します。

1つのファイルを選択した場合は、比較するファイルを選択するように指示されます。アクティブなエディターとクリップボードを簡単に比較するには、表示 | クリップボードと比較を選択します。

貼り付け

クリップボードといえば、IntelliJ IDEAはそこに置いたすべてを追跡します。以前にコピーした項目の1つを貼り付ける場合は、Ctrl+Shift+Vを押してください。

複数選択

複数選択は比較的新しい、非常に強力なエディター機能で、複数の(隣接しているかどうかにかかわらず)コードをすぐに選択して編集することができます。

簡単に説明すると、次のようになります。Alt+J (IntelliJ IDEAがキャレットにあるシンボルを選択する) を押すか、通常どおり何かを選択します。

Alt+J とIntelliJ IDEAを押すと現在のファイルが前方に検索され、一致するテキストが見つかるまで選択されます。 Alt+J をもう一度押すと Shift+Alt+J を押すか、Shift+Alt+J を押して戻ることができますが、ファイルの終わりに達するとファイルの先頭から開始します。

multiselection1

選択が完了したら、すべてのフラグメントの編集を開始することができます。

耳寄り情報 : キャレットをクローン化するもう1つの方法は、Ctrl (macOSの場合はAlt )を2回押してから、矢印で、または単にマウスでキャレットを上下に移動することです。

Emmet

ご存じない方のために説明すると、Emmet(英語)はHTML、XML、CSSコードを書くための素晴らしい方法です。IntelliJ IDEAは、Emmet式を書いて Tab キーを押して展開するだけで、すぐに使えるようにサポートしています。

Emmetプレビューアークション(「アクションの検索」または「すべての検索」で利用可能です)を使用して、結果のコードのプレビューを見るために便利なショートカットに割り当ててください。

emmet preview

正規表現

正規表現は強力で広く使用されていますが、正しく記述するのは難しい場合もあります: IntelliJ IDEAはコード内の正規表現を確認できます:その中にキャレットを置き、Alt+Enter を押して正規表現をチェックする インテンションを使用してください:

check regexp1

正規表現グループを検索して置換する

IntelliJ IDEAが正規表現に役立つ別の場所は 検索と置換機能です。キャプチャされたグループを置き換え式でサポートしていることは分かっています。

replaceText

検索と置換は、コメントとリテラルを検索から除外することもできます。これを行うには、歯車アイコン icons codeStyle Gearを使用します。

バイトコードビューアー

プログラムが生成した実際のバイトコードを見るのは非常に洞察力があり(英語)ます。

IntelliJ IDEAでは、表示 | バイトコードの表示経由でいつでも行うことができます。

バージョン管理

変更を修正する

変更のコミット・ダイアログでは、IntelliJ IDEAはさまざまな操作を実行できます。それらのうちの1つはコミットの修正です。これは、最後のコミットを変更し、現在の変更にそれを加えるときに便利です。

シェルブとパッチ

シェルブGit Stash(英語)に似たIDE機能ですが、これはすべてのVCSで機能します。現在の作業を一時停止し、リポジトリから何かを取り出してできるだけ早く修正し、作業していた作業を再開する必要があるときに役立ちます。この機能は、ローカルで変更されたファイルをコミットせずに処理するため、変更が失われることも、マージコミットが急に行われることもありません。

詳細は、Git-Stash(英語)ページとスタッシュとアンスタッシュページを参照してください。

パッチを使用すると、メール(またはその他の古代の媒体)で転送してコードに適用できるテキストファイルに一連の変更を保存できます。あなたの飛行機の墜落が砂漠の島に上がった後、何かをコミットする必要があるとき、あるいは何とか信頼できるブロードバンド接続がない状況に陥ったときに役立ちます。

詳細はセクションパッチを使うを参照してください。

デバッグ

アクション、またはメソッドブレークポイント

場合によっては、実際に停止することなく、特定のコード行で何かを評価したいことがあります。メソッド・ブレークポイントを使ってそれを行うことができます。作成するには、Shiftを押したままガターをクリックします。

ij breakpoint action

このようにして、コードを変更せずに任意の式を出力に印刷できます。これは、ライブラリーやリモートアプリケーションをデバッグする場合に特に便利です。

フィールドブレークポイントまたはフィールドウォッチポイント

上記のアクションブレークポイントに加えて、フィールドウォッチポイントも使用できます。このブレークポイントは、関連するフィールドにアクセスすると実行を停止します。フィールドウォッチポイントを作成するには、Alt (macOSの場合はCtrl+Cmd )を押したままガターをクリックします。

ij breakpoint field

オブジェクトマーカー

アプリケーションをデバッグしているとき、IntelliJ IDEAは、オブジェクトをマークアクションを使って簡単に識別できるように、任意のオブジェクトの特定のインスタンスに色付きのラベルを付けることができます (式の評価変数または監視式のビューで使用できます。)

また、ラベルが付いたインスタンスがあれば、それを条件式にも使用できます。

ij breakpoint debug label

カスタムデータレンダラー

式の評価 変数監視式、およびインラインデバッガはすべて、toString クラスの実装に基づいて、変数値をレンダリングする標準的な方法を使用します。どのクラスにも独自のカスタムレンダラーを定義できることは、誰もが知っているわけではありません。そのためには、デバッグツールウィンドウのコンテキストメニューからデータ・ビューのカスタマイズを選択します。

ij type renderer

これは、使用しているライブラリーのいくつかのクラスが意味のある toString 実装を提供していない場合に特に便利です。つまり、ライブラリーの外で自分で定義することができます。

フレームにドロップ

デバッグ中に「時間を巻き戻す」場合は、ドロップフレームアクションを使用します。誤って多く進めてしまった場合、これは大きな助けになります。これによってアプリケーションのグローバル状態が元に戻ることはありませんが、少なくともフレームのスタックによって元に戻すことができます。

強制リターン

途中で、先にジャンプしたい場合は、それ以降の命令を実行せずに現在のメソッドからの復帰を強制するには、強制リターンアクションを使用します( Ctrl+Shift+A を押してアクション名を入力します)。メソッドが値を返す場合は、値を指定する必要があります。

DCEVM

コードに簡単な変更を加えたときに、作業中のアプリケーションでコードがどのように動作するかをすぐに確認したい場合があります。残念ながら、Java HotSwap VMには多くの制限があります。たとえば、クラスに新しいメソッドやフィールドを追加して、ホットスワップを実行することはできません。ホットスワップ中に変更できるのはメソッド本体だけです。

詳細については、セクション修正されたクラスをリロードするおよびホットスワップを参照してください。

幸運なことに、この状況を新しいオープンソースプロジェクトDynamic Code Evolution VM(Java HotSwap VMの修正版)で修正する方法があります。実行時にクラスを再ロードすることを無制限にサポートしています。

IntelliJ IDEAでそれを使用するのは専用プラグイン(英語)で簡単です。プラグインを有効にすると、IDEはあなたの環境のためにDCEVM JREをダウンロードするようにあなたに申し出ます。次に、代替JREのリストでそれを選択する必要があります。

アプリケーションの更新

アプリケーションをアプリケーションサーバー (Tomcat、JBossなど) で実行している場合は、N/Aを介してアプリケーションの更新アクションを使用して、変更したクラスとリソースを再ロードできます。

詳細はセクションアプリケーションサーバーでのアプリケーションの更新を参照してください。

ツール

外部ツール

IntelliJ IDEAには多くの開発ツールが統合されており、すぐに使用できます。統合されていない必要なツールをショートカットから使用する場合は、設定/環境設定 | ツール | 外部ツールに移動し、このツールの実行方法を設定します。これで、ツール | 外部ツールメインメニューからこのツールを実行できるようになります。

セクションサードパーティツールの設定を参照してください。

最終更新日: 2019年5月20日

関連ページ:

IntelliJ IDEAを理解する

IntelliJ IDEAは効率的な開発のための一連の機能で生産性を維持できます。このトピックでは、始めるための一般的で役立つヒントの概要を説明します。ユーザー・インターフェース:IntelliJ IDEAエディターを離れずにほとんどすべてのアクションを呼び出すことができます。つまり、ツールバーやウ...

コードリファレンス情報

定義:IntelliJ IDEAでは、タグ、クラス、フィールド、メソッド、関数などのシンボルがプロジェクトでどのように定義されているかを確認することができます。この目的のために、IDEにはクイック定義ポップアップがあります。シンボルの定義を表示するには、エディターでシンボルを選択し、 を押します(ま...

コード補完

このセクションでは、コーディングプロセスのスピードアップを可能にするコンテキスト対応コード補完のさまざまなテクニックについて説明します。基本補完:基本コード補完を使用すると、可視性の範囲内でクラス、メソッド、フィールド、およびキーワードの名前を補完することができます。コード補完を起動すると、Inte...

ソースコードを使って作業する

コードを扱うとき、IntelliJ IDEAはあなたの作業がストレスフリーであることを保証します。コードの追加、選択、コピー、移動、編集、折りたたみ、保存に役立つさまざまなショートカットや機能があります。エディター内のナビゲーションについては、エディターの基本を参照してください。アクションの検索:使...

型のマイグレーション

タイプ移行リファクタリングでは、メンバータイプ(整数から文字列など)と、プロジェクト全体のメソッドの戻り値の型、ローカル変数、パラメータなどのデータフローに依存する型エントリを自動的に変更できます。また、配列やコレクション間で変数やメソッドの戻り値の型を自動的に変換することもできます。競合が見つかっ...

DSM分析

この機能は、Ultimateエディションでのみサポートされています。バンドルされたDSM分析プラグインを有効にする必要があります。多数の依存関係を持つ複雑なプロジェクトに取り組むことで、どこで問題を探すのかを理解することが難しくなります。アプリケーションのパフォーマンスや動作に重大な影響を及ぼす可能...