S-JIS[2004-09-08/2008-11-15] 変更履歴

Eclipseでファイル検索

Eclipseで複数ファイル内の検索ができる。ちょっと遅いけど。
Javaの文法を考慮した高度な条件も指定できるので便利。


検索ダイアログ

Ctrl+Hか、メニューバーの「検索(A)」→「検索(A)」で検索ダイアログが開く。

このダイアログに「ファイル検索」や「Java検索」といったタブがある。


スコープ(検索範囲)

ファイル検索」や「Java検索」では、検索する範囲をスコープ(Eclipse3では検索範囲)で指定することになる。

検索範囲 概要
ワークスペース Eclipseインストール時(Eclipse起動時)に指定したワークスペース内。
通常は1つのワークスペース内に複数のプロジェクトがあると思うが、それら全てが検索対象
選択されたリソース
エンクロージング・プロジェクト
自分のプロジェクト内。[2007-07-14]
(「選択されたリソース」と「エンクロージング・プロジェクト」の違いはよく分からないなぁ)
作業セット
(ワーキング・セット)
ワークスペース内の特定の場所を、作業セットとして 名前をつけて登録できる。
これらの作業セットのうち1つが検索対象

作業セットには、最初何も選択できるものがない。
「作業セット」の右側についている「選択(H)」ボタンを押すと、「作業セットの選択」ダイアログが開く。
ここで「新規(N)」ボタンを押して「Java」等を選び、「作業セット名(W)」に名前を入れて 「作業セット・コンテンツ(C)」で場所を選択する。


ファイル検索

ごく普通の、複数ファイル内の文字列検索。

項目名 説明
含まれるテキスト(O) この文字列を探す。 <<<<<
ファイル名パターン(P) 探すファイルの名前を指定する。 *.java

Java検索

Java言語の文法に合致している要素(エレメント)だけを検索できる。

検索したい文字列は「検索ストリング(A)」に入力するが、これがJavaの特定の文法に一致している場合だけが検索対象となる。
どの文法に一致させるかは「検索」で指定する。

-検索-
選択肢 説明
(T) 型名として使われている箇所を検索する。
メソッド(M) メソッド名として使われている箇所を検索する。
パッケージ(P) パッケージ名として使われている箇所を検索する。
コンストラクター(N) コンストラクターとして使われている箇所を検索する。
フィールド(F) クラスで宣言されている変数を検索する。

-制限-
選択肢 選択可能条件 説明
宣言(L) 全て 指定された文字列が定義(宣言)されている箇所を検索する。
インプリメンター(I) 指定されたクラス・インターフェースをimplements(又はextends)している箇所を検索する。
参照(R) 全て 指定された文字列を使っている箇所を検索する。
読み取りアクセス(C) フィールド 指定された変数を読む為に使っている箇所を検索する。
書き込みアクセス(E) フィールド 指定された変数に書き込んでいる箇所を検索する。
すべてのオカレンス(O) 全て 上記の全ての箇所を検索する。

Eclipse2では、検索ダイアログを出さずに検索することも出来る。

  1. ソースファイル上で、検索したい文字列を選択する。
    選択した文字列は、Javaの文法を解析して、自動的に検索ダイアログの「検索」に該当する要素として扱われる。
    したがって、Javaの要素でない部分(例えばコメントの中の文字列)では、この検索をすることが出来ない。
  2. 右クリック→「検索(F)」を選択する。
  3. 次いで「参照(F)」「宣言(L)」「インプリメンター(I)」「読み取りアクセス(R)」「書き込みアクセス(W)」のいずれかを選択する。
    これは、検索ダイアログの「制限」に該当する。
    ただし「インプリメンター」は、インターフェース名のみにしか使えない(クラス名では検索できない)。
  4. 次いで「ワークスペース(W)」「階層(H)」「作業セット(S)」から検索範囲を選択する。以前に作業セットから検索したことがあった場合、その作業セット名も選択肢に表示される。
    これは、検索ダイアログの「スコープ」に該当する。
    「階層」は、検索したい文字列が属しているクラスの階層の中を検索範囲とする。
    「作業セット」を選んだ場合、どの作業セットから検索するかを指定する為のダイアログが開く。

リモート検索

Eclipseのワークスペースの外のディレクトリーやファイルを検索できる。[2008-11-15]
Eclipse3.4から使えるようになった機能。

メニューバーの「検索(A)」→「リモート(R)」。

自分のマシン(ローカル)だけでなく、他サーバー(UNIXとか)に接続してそこのファイルを探すことも出来るらしい。


使用方法へ戻る / 技術メモへ戻る
メールの送信先:ひしだま