連載
» 2005年09月28日 00時00分 公開

Eclipse 3.1を使おう(2):Eclipse 3.1の統合環境を使いこなす (3/3)

[金子崇之, 岡本隆史,NTTデータ]
前のページへ 1|2|3       

サードパーティのJARを利用する

 サードパーティのJARを利用する方法は大きく分けて2つあります。プロジェクト内部にJARを配置する方法と、プロジェクト外部のJARを参照する方法です。

プロジェクト内部にJARを配置

 プロジェクト内部にJARを配置する方法は、デプロイする段階でJARを同梱したい場合に使用します。[ファイル]→[インポート]→[ファイルシステム]で、インポートしたいJARファイルのあるディレクトリを選択し、表示された一覧からJARを指定すると、プロジェクトに取り込むことができます。その後、プロジェクトを右クリック-[プロパティ]→[Javaのビルド・パス]→[ライブラリー]→[JARの追加]で、インポートしたJARを指定することで、利用できるようになります。

プロジェクト外部のJARを参照

 プロジェクト外部のJARを参照する方法は、デプロイ時にそのJARを同梱しない場合に使用します。参照方法には、JARファイルを直接指定する方法、変数を使用する方法、ユーザー・ライブラリーを指定する方法の3つがあります。プロジェクトを右クリック→[プロパティ]→[Javaのビルド・パス]→[ライブラリー]で表示されるダイアログで[外部JARの追加]/[変数の追加]/[ライブラリーの追加]を指定することで利用できるようになります。

 設定を他人と共有する場合には、Eclipseのインストールディレクトリなどの環境依存の部分を吸収するため[ECLIPSE_HOME/plugins/org.apache.ant_1.6.5/lib/ant.jar]のECLIPSE_HOMEのように変数を使用すると良いでしょう。また、依存するJARファイルが多い場合には、複数のJARファイルをユーザー・ライブラリーとしてまとめておくと、利用したいプロジェクトに対しては,このユーザー・ライブラリーだけをビルド・パスに追加すればよい、というようなことを実現できるため良いでしょう。

[コードの断片]の実行

 Javaプロジェクトで、[ファイル]→[新規]→[スクラップブック・ページ]を追加すると、.jpageという拡張子の付いたファイルができます。これはJavaのクラスを作成することなく、ちょっと思い付いたコードや試したいコードを断片としてメモし、それを即座に実行する、といった使い方ができるページです。

 例えば、[java.text.DecimalFormat.getCurrencyInstance().format(19800);]と入力した後、その行を選択して右クリック→[表示]または[Ctrl]→[Shift]→[D]を選択すると、“(java.lang.String) \19,800”といった結果を得ることができます。

ビルド機能

 Java ソースファイルのコーディング中でも、文法エラーがある場合、エディタの左端に赤い×印が付きます。保存すると、自動的にコンパイルが行われ、コンパイルエラーが発生している場合、ナビゲータビューやパッケージビュー上でエラーが発生している個所に赤い×印が付くとともに、修正が必要な個所がタスクビューに表示され、一目で分かるようになっています(画面6)。

画面6 パッケージビュー、タスクビューの問題表示 (クリックすると拡大表示します) 画面6 パッケージビュー、タスクビューの問題表示 (クリックすると拡大表示します)

 タスクビューで、エラータスクをダブルクリックし、エラーの場所にジャンプして修正しましょう。この例では、Runnableインターフェイスのrun ()メソッドを実装する必要があります。[ソース]→[メソッドのオーバーライド/実装]を実行し、[run]にチェックを付けて[OK]を押すと、スケルトンコードを生成してくれます。必要なコードを実装して[保存]し、赤い印が全部消えれば、実行できるようになっています。

タスクで作業メモ

 開発中、作業を後回しにするといったとき、その内容とソースコード位置を合わせて「タスク」としてメモしておくことができます(画面7)。

画面7 タスクにメモを残しながら作業できる (クリックすると拡大表示します) 画面7 タスクにメモを残しながら作業できる (クリックすると拡大表示します)

 タスクを設定したい行にカーソルを移動し、[編集]メニュー、またはエディタの左端での右クリックメニューから、[タスクの追加]を選択し、説明を追加すると、タスクビューのエントリとして追加できます。タスクビューのエントリをダブルクリックすることで、カーソルが該当行へジャンプします。

 ソースコード中にコメントとして“TODO:”や“FIXME”、“XXX”というキーワードを付けると、これらもタスクとして登録されます。キーワードは[ウィンドウ]→[設定]→[Java]→[コンパイラー]→[タスク・タグ]でカスタマイズすることができます。

 タスクに似たような機能として、「ブックマーク」があります。ブックマークビューにリストされることを除いて、タスクと同様の機能を持っています。ブックマークビューが表示されていないときは、[ウィンドウ]→[ビューの表示]→[その他]→[基本]で[ブックマーク]を選択することで表示できます。

デバッグ支援機能

 Eclipseは、ブレークポイントを設定したり、ステップを実行したりといったデバッグ支援機能を持っています。

 ソース上のブレークポイントを設定したい行で、[実行]→[行ブレークポイントの切り替え]([Ctrl]+[Shift]+[B])を選択すると、エディタの左端に青い○印が付きます。この状態で、[実行]→[デバッグ]を選択すると、自動的にデバッグパースペクティブに切り替わり、設定したブレークポイント上で実行がいったん停止します。この時点で、デバッグビューでスタックトレースを観察したり、変数ビューで変数の中身を見たり、表示ビューで式を評価したり、ステップ実行したりできます(画面8)。

画面 8 デバッグの機能 (クリックすると拡大表示します) 画面 8 デバッグの機能 (クリックすると拡大表示します)

 ソース上で変数にマウスポインタを当てると、その変数の値がポップアップ表示されます。また、変数や式を選択して[Ctrl]+[Shift]+[I]と入力すると,その詳細な値がポップアップ表示されます。さらにここで[Ctrl]+[Shift]+[I]を入力すると、その式をそのまま式ビューに追加できるようになっています。変数ビューでは、値がnullな配列の要素を非表示にするフィルタがあり、ArrayListのようなコレクションクラスの内容も見やすく表示できます(画面9)。

画面9 コレクションクラスの表示 画面9 コレクションクラスの表示

 また変数ビューで,変数の値が表示されている部分を書き換えることができます。値を書き換えて[Ctrl]+[S]を入力すれば,その値を変数に代入できます。

コードを飛び回れ

関連するクラスへの移動

 コード中のメソッド呼び出しを右クリックして[宣言を開く]([F3])を選択すると、そのメソッドの実装部分にジャンプすることができます。オブジェクトに対して同じ操作をすると、そのオブジェクトのクラス定義にジャンプします。

 別のファイルにジャンプした場合は、エディタ上の別タブとして開きますので、元のタブを選択([Alt]+[←])すれば元の位置に戻ることができます。

 メソッド定義を右クリックして[検索]→[参照]→[ワークスペース]([Ctrl]+[Shift]+[G])を選択すると、そのメソッドを呼び出している個所を検索し、検索ビューに表示します。検索結果はエディタ上で黄色い矢印で表示されます。クラス名をキー入力して探したいときは、サーチ([Ctrl]+[H])が便利です。

 [ナビゲート]→[クイック・アウトライン]([Ctrl]+[O])を実行することで、ファイルのアウトラインをポップアップウィンドウで確認できます。もう1度[Ctrl]+[O]を入力することで、スーパークラスのメンバも表示され、そのメソッドをクリックしてジャンプすることができます。

 [ナビゲート]→[クイック型階層]([Ctrl]+[T])でポップアップする型階層ウィンドウを使うと、継承関係にあるほかのクラスにジャンプすることができます。もう1度「Ctrl]+[T]を入力することで、階層の上下関係を切り替えることができます(画面10)。また、階層ビューではインターフェイスを処理対象とすることができるので、そのインターフェイスを実装しているクラスを表示し、そこへ移動することも容易です。

画面10 階層構造へジャンプ 画面10 階層構造へジャンプ

 [ナビゲート]→[呼び出し階層を開く]([Ctrl]+[Alt]+[H])を実行することで、そのJava要素の[コールグラフ]、つまり、そのメソッドが呼び出している、またはそのメソッドを呼び出しているメソッドを階層表示することができます。これは以前Call Hierarchy Plug-inとして提供されていた機能です。

注釈で移動

 コンパイルエラーがある場合や、検索を実行した場合などにもエディタの左側にマークが付きます。これらのマークを注釈といいます。タスクビュー、問題ビュー、検索ビューに表示されている行をダブルクリックすることで、該当行に移動することができます。

 [ナビゲート]→[次の注釈]([Ctrl]+[.])という操作をすることで、編集中のファイルの注釈へ移動することができます。このとき、移動先の対象となる注釈を選択することができます。移動対象としてタスクを選択しておけば(画面11)、TODO:コメントがある行に即座にジャンプすることができます。

画面11 移動先の注釈を選択できる 画面11 移動先の注釈を選択できる

リファクタリング機能

 メソッドの名前を変更するなど、ソースの広い範囲に影響が加わるリファクタリングも、簡単に実施できます。ソース上で右クリックして、[リファクタリング]([Alt]+[Shift]+[T])で表示されるリファクタリングメニューから実行したいリファクタリングを選択すると、ワークスペース上のソースから影響範囲を探し出し、自動的に修正を行ってくれます。表示されるダイアログで[プレビュー]ボタンをクリックすると、変更内容を目で確認してからリファクタリングを実行することができます。

 メソッドのプルアップ(スーパークラスへの移動)や、別クラスへの移動なども半自動です。Javadocの@paramタグも適切に修正される、メソッドシグニチャを変更したときにサブクラスも同様に修正されるなど、関連する部分も自動的に処理されるので、奔放にリファクタリングを行うことが可能となっています。

J2SE 5.0への対応

 Eclipse 3.1では、J2SE 5.0に完全対応しています。Javaプロジェクトの新規作成においてJ2SE 5.0を選択する(画面12)ことで、以下のようなJ2SE 5.0の機能に対応します。

  • J2SE 5.0のAPIに対応したコンテンツアシスト
  • Enumeration、Annotation、Genericsに対応したウィザード、リファクタリング
  • Autoboxing、GenericなどJ2SE 5.0の文法に対応したJavaエディタ
画面12 プロジェクトの作成でJ2SE 5.0を選択 画面12 プロジェクトの作成でJ2SE 5.0を選択

まとめ

 今回は、EclipseのワークベンチとJava開発環境について見てきました。Eclipse 2.1と比較し、さまざまなところで使い勝手が向上しています。カスタマイズできる項目も大幅に増えているので、より自分好みに設定することが可能です。

 次回は、Eclipse 3.1をターゲットとして開発されたWeb開発のためのプロジェクト、WTP(Web Tools Platform Project)を用いたWebアプリケーション開発について説明します。


前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。