S-JIS[2006-06-17/2013-02-22] 変更履歴

Eclipse3でJavaのプログラミング

Eclipse3はEclipse2と見た目はだいぶ変わったけど、基本的な使い方はあまり変わっていないはず。
という訳で、Eclipse2用に書いたページも参考になるかも。


後からJavaプロジェクトに変更する方法

CVSでチェックアウトする際にJavaプロジェクトを指定しないと、単なるプロジェクトになってしまう。[2009-02-19]
そうしたプロジェクトをJavaプロジェクトにするには、設定ファイルを直接いじれば変更できる。

  1. 他にJavaプロジェクトが無ければ、空でよいのでJavaプロジェクトを作っておく。
  2. 変更したいJavaプロジェクトのディレクトリー直下の「.project」ファイルの中を、他のJavaプロジェクトからコピー&ペーストして修正する。
    単なるプロジェクト   Javaプロジェクト
    <?xml version="1.0" encoding="UTF-8"?>
    <projectDescription>
    	<name>normal_project</name>
    	<comment></comment>
    	<projects>
    	</projects>
    	<buildSpec>
    	</buildSpec>
    	<natures>
    	</natures>
    </projectDescription>
    <?xml version="1.0" encoding="UTF-8"?>
    <projectDescription>
    	<name>normal_project</name>
    	<comment></comment>
    	<projects>
    	</projects>
    	<buildSpec>
    		<buildCommand>
    			<name>org.eclipse.jdt.core.javabuilder</name>
    			<arguments>
    			</arguments>
    		</buildCommand>
    	</buildSpec>
    	<natures>
    		<nature>org.eclipse.jdt.core.javanature</nature>
    	</natures>
    </projectDescription>
    ※内容はEclipseのバージョンによって違う
  3. 他のJavaプロジェクトから、「.classpath」ファイルをコピーしてきて、中身を編集する。(単なるプロジェクトには「.classpath」ファイルは存在しない)
    <?xml version="1.0" encoding="UTF-8"?>
    <classpath>
    	<classpathentry kind="src" path="src"/>		←ソースディレクトリー
    	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
    	<classpathentry kind="output" path="classes"/>	←コンパイルしたクラスファイルの出力先
    </classpath>
  4. Eclipse上から、変更対象プロジェクトをクリックしてF5キーを押し、「更新」する。
    すると、Javaプロジェクトとして使えるようになる。

ビルドパスの追加・変更

コンパイルしたいディレクトリを追加・変更する方法。[2004-03-26]

  1. プロジェクトのプロパティーダイアログの「Javaのビルド・パス」を開く。
  2. 右側のペインの「ソース(S)」タブ内のフォルダーを選択して「フォルダーの追加(A)」や「編集(E)」ボタンをクリック
  3. 「ソース・フォルダーの選択」ダイアログが開くので、その中から追加したいディレクトリを選んで「OK」ボタンをクリック

jarファイルを追加したい場合は以下の様にする。[2007-08-26]

  1. 右側ペインの「ライブラリー(L)」タブを選択して追加ボタンを押す。
    JARの追加(J) Eclipseのワークスペース内にあるjarファイルを追加したい場合に使用する。
    外部JARの追加(X) 任意の場所にあるjarファイルを追加したい場合に使用する。
    変数の追加(V) 変数(で指定された場所にあるライブラリー)を追加したい場合に使用する。
    このボタンを押すと変数一覧が出るので、変数を選択して「拡張」ボタンを押すと
    その変数が指す場所のツリーが表示される。そこから追加したいjarファイルを選択する。[2013-02-22]
    ライブラリーの追加(B) 複数のjarファイルをまとめて1つのライブラリーとして扱う。[2009-02-19]
    クラス・フォルダーの追加(C) Eclipseのワークスペース内にあるclassesディレクトリを追加したい場合に使用する。

プロジェクト内のjarファイルの場合は、もっと簡単に追加できる。[2007-09-06]

  1. 「パッケージ・エクスプローラー」内で、追加したいjarファイルを右クリック
  2. 「ビルド・パス(B)」→「ビルド・パスに追加(A)」
    ちなみに、既に追加しているjarファイルであれば、「ビルド・パスから除去(R)」で外すことが出来る。

Eclipse3.4でjarファイルを追加すると、パッケージ ・エクスプローラー上では「参照ライブラリー」というフォルダー(のようなもの)が作られ、その下にjarファイルが並ぶ。[2009-02-19]
つまり、デフォルトでは「参照ライブラリー」という1行しか表示されない為、すっきりする。
(「JREシステム・ライブラリー」と同様の形)

Eclipse3.2では、追加したjarファイルプロジェクト直下全て表示される為、jarファイルの数が多いと非常に鬱陶しい。
この場合、直接jarファイルを追加するのではなく、「ライブラリー」の形で追加するとよい。
(「ライブラリー」は、「JREシステム・ライブラリー」と同様にjarファイルを内包してくれる)

  1. 上記の「ライブラリー(L)」タブで、「ライブラリーの追加(B)」ボタンを押す。 「ライブラリーの追加」ダイアログが開く。
  2. 「ユーザー・ライブラリー」を選択して「次へ」
  3. ユーザーライブラリーが未登録の場合、「ユーザー・ライブラリー(U)」ボタンを押して「設定」ダイアログを開く。
    1. 「新規(N)」ボタンを押して「新規ユーザー・ライブラリー」ダイアログを開く。
    2. ユーザーライブラリー名を入れる(自分で好きな名前を付けてよい)。そして「OK」で一旦終了する。
    3. 「定義済みのユーザー・ライブラリー(D)」の一覧に登録したライブラリー名が表示されているので、それを選択する。
    4. 「JARの追加(J)」ボタンを押すとファイル選択ダイアログが開くので、ここからライブラリーに追加したいjarファイルを選択する。
      (なお、「編集」ボタンはライブラリー名の変更)
      追加したjarファイルはライブラリー名の下にツリー状に表示される。ここでjarファイルを選択して「除去(R)」ボタンを押すと、jarファイルを取り除くことが出来る。
      (ライブラリーそのものを選択して「除去(R)」ボタンを押すと、当然ライブラリーが削除される)
    5. 「OK」を押してユーザーライブラリーの登録を完了する。
  4. ユーザーライブラリーの一覧の中で、使用したいライブラリーにチェックを付ける。
  5. 「終了(F)」ボタンを押すと、ビルドパスにライブラリーが追加される。

実行時パスを追加する方法

WindowsのDLLを使おうと思ったら、環境変数PATHにDLLファイルへのパスを追加するか、既にPATHに存在するディレクトリにDLLファイルを置くか、といった方法を採る。

アプリケーション固有のDLLを呼び出したい場合、システム環境変数のPATHにアプリのディレクトリ名を追加したり、システムディレクトリー(C:\WINDOWS\system32とか)にアプリのDLLファイルをコピーしたりすれば出来るが、システム共通部分にアプリ固有の設定を加えるのは避けたいところ。

これを解決するには、Eclipseで実行するときだけ環境変数PATHにディレクトリを追加してやればよい。

  1. メニューバーの「実行(R)」→「構成および実行(N)」で「構成および実行」ダイアログを開く。
  2. 左側の「構成(F)」ペインから(「Javaアプリケーション」配下の)設定したいアプリを選択する。
  3. 右ペインの「環境」タブを選択する。
  4. 「新規(E)」ボタンを押して「新規環境変数」ダイアログを開く。
  5. 「名前(N)」に環境変数名(ここでは"PATH")を、
    「値(V)」にDLLファイルが存在するディレクトリ名を入れる。

既存の環境変数に追加したい場合は、「新規(E)」ボタンの代わりに「選択(L)」ボタンを使う。
環境変数の一覧が出てくるので、使いたい環境変数を選ぶ。

Eclipseのプロジェクト直下libというディレクトリを作ってそこにdllファイルを置いた場合、PATHの値に「lib」だけ指定すればOK(な場合もある)。[2007-09-16]
(C:/workspace/hoge/lib/zzz.dll → PATH=lib)


コンパイラー準拠レベル

コンパイラー(javac)の準拠レベルを指定できる。[2007-02-14]
javacの-sourceオプションに相当。

JDKのバージョンが上がって新しい文法が増えているが、コンパイラーの準拠レベルもそれに合わせないとコンパイルできない。

  1. メニューバーの「プロジェクト(P)」→「プロパティー(P)」で「プロパティー」ダイアログを開く。
  2. 左側のツリーから「Javaコンパイラー」を選択する。
  3. 右ペインの「プロジェクト固有の設定を可能にする(O)」にチェックを入れる。
  4. 「コンパイラー準拠レベル(I)」コンボから準拠レベルを選択する。
    Eclipse3.3までは、JDK1.4なら1.4、JDK1.5なら5.0、JDK1.6なら6.0。
    Eclipse3.4では、素直に1.4・1.5・1.6。[2008-10-25]

リファクタリング

リファクタリングは単なる文字列の置換と異なり、関連している部分(参照しているソースやJavadocコメント等)も一緒に変更してくれるのがとても便利![2007-01-23]

ローカル変数名の変更

変数名を変更するには、以下の2通りの方法がある。

一括変更

画一的なリファクタリングなら、複数ファイルをまとめて変換することが出来る。[2008-10-03]

  1. パッケージ・エクスプローラーで、変換したいソースディレクトリーを右クリックしてポップアップメニューを出す。
  2. 「ソース(S)」→「クリーンアップ(U)」で「クリーンアップ」ダイアログを開く。
  3. 実行したいリファクタリングの種類を選ぶ(チェックを付けたり外したり)。で、実行。

ソースの添付

classのソースを参照する方法。[2007-02-19]

プロジェクトにjarファイル(ライブラリー)を追加することが出来るが、F3キー(「宣言を開く(O)」)等でそのjarファイル内のclassファイルを開いた時に、デフォルトではソースが表示されない。
jadclipseを入れていれば、逆コンパイルされたソースが表示されるが)

Eclipseでは ソースを指定してやることで、そのソースが表示されるようになる。

jarファイルのソース参照方法その1

jarファイルの中に、classファイルだけでなく、javaファイルを入れてしまう。
(パッケージ(ディレクトリー)的にはclassとjavaは同じ場所に入れる)

すると、classの定義を見ようとすると、自動的にソースファイルが開かれる。
antでソースとクラスを両方ともjarファイル内に入れる例

jarファイルのソース参照方法その2

Eclipseでは、jarファイル(ライブラリー)に対し、ソースファイルの場所を別途指定してやることが出来る。

  1. パッケージ・エクスプローラー内で、自分のプロジェクトに入っているjarファイルを右クリックし、「プロパティー(R)」で「プロパティー」ダイアログを開く。
  2. 左側のツリーから「Javaソースの添付」を選択する。
  3. 右ペインの「ロケーション・パス(C)」に、ソースのあるディレクトリーあるいはzipファイル(jarファイル)を指定する。
    Eclipseの他のプロジェクトにあるなら「ワークスペース(W)」ボタンで選択可能、
    その他のzipファイルを指定するなら「外部ファイル(F)」ボタンで選択可能、
    その他のディレクトリーを指定するなら「外部フォルダー(O)」で選択可能。

jarファイルの生成

Eclipseのエクスポート機能を使ってjarファイルを作ることが出来る。[2010-02-21]

  1. パッケージ・エクスプローラー内で、jarファイル化するプロジェクトを選択する。
  2. メニューバーの「ファイル(F)」→「エクスポート(O)」で「エクスポート」ダイアログを開く。
  3. 「Java」⇒「JARファイル」を選択して「次へ」
  4. エクスポート先「JARファイル(J)」にjarファイルの出力先をフルパスで設定する。
  5. 「終了」ボタンを押下する。

ただ、何度も行うなら、Antのbuild.xmlを作って実行する方が楽なんじゃないかなぁ。


Javadoc生成

Javadocの生成は、以下のような手順で行う。[2006-09-15]

  1. パッケージ・エクスプローラー内で、生成したいプロジェクトを選択する。
  2. メニューバーの「プロジェクト(P)」→「Javadocの生成(G)」を選択し、「Javadocの生成」ダイアログを開く。
  3. まとめてJavadocを生成したいプロジェクト(のソースディレクトリ)を全てチェックする。
    「次へ(N)」ボタンを押す。
  4. 文書タイトル(T)」に、トップページのタイトルを入力する。 (無くてもよい)
    「次へ(N)」ボタンを押す。
  5. 概要(O)」に、Javadoc全体の説明を書いたHTMLファイルの場所を指定する。 (無くてもよい)
    「追加のJavadocオプション(X)」に、ウィンドウのタイトルを指定する。 (無くてもよい)
    「終了(F)」ボタンを押す。
  6. 「Javadocロケーションの更新」ダイアログが出て“プロジェクトのJavadocロケーションを変えていいか”聞かれるので、「すべてはい(A)」ボタンを押す。

以上の操作で、しばらく待つとJavadocが生成される。

生成したJavadocの例


文書タイトル

「文書タイトル」に文言を入れると、トップページの最上部にそれが表示される。

↓「ひしだまJavaライブラリー」と入れた例

 概要  パッケージ  クラス  使用  階層ツリー  非推奨 API  索引  ヘルプ 
 前   次 フレームあり    フレームなし    

ひしだまJavaライブラリー


概要

「概要」HTMLファイル名を入れると、そのファイルの内容がトップページに表示される。
このHTMLファイルは、Javaのソースディレクトリのトップにoverview.htmlという名前で置くのが慣例らしい。

src/overview.htmlの例:

<html>
<body>
<a target="hishidama" href="http://www.ne.jp/asahi/hishidama/home/soft/index.html">ひしだま</a>が製作した
Javaのライブラリです。
</body>
</html>

ひしだまJavaライブラリー

ひしだまが製作した Javaのライブラリです。

参照:
          説明

パッケージ

ひしだまが製作した Javaのライブラリです。


パッケージコメント

パッケージの説明をつけるには、ソースディレクトリの各パッケージのディレクトリ直下にpackage.htmlというHTMLファイルを置いておき、その中に説明を書いておく。 (JDK1.4まで)

src/jp/hishidama/bitmap/package.htmlの例:

<html>
<body>
ビットマップ(DIB)パッケージ.
<p>
デバイスに依存しないビットマップを扱うクラス群です。
</p>
@author <a target="hishidama" href="http://www.ne.jp/asahi/hishidama/home/soft/java/bitmap.html">ひしだま</a>
</body>
</html>

 
パッケージ
jp.hishidama.bitmap ビットマップ(DIB)パッケージ.

パッケージ jp.hishidama.bitmap の説明

ビットマップ(DIB)パッケージ.

デバイスに依存しないビットマップを扱うクラス群です。

作成者:
ひしだま


JDK1.5以降では、package.htmlファイルの代わりに、package-info.javaを使う。[2008-08-20]

src/jp/hishidama/bitmap/package-info.javaの例:

/**
 * ビットマップ(DIB)パッケージ.
 * <p>
 * デバイスに依存しないビットマップを扱うクラス群です。
 * </p>
 * @author <a target="hishidama" href="http://www.ne.jp/asahi/hishidama/home/soft/java/bitmap.html">ひしだま</a>
 */
package jp.hishidama.bitmap;

ウィンドウタイトル

「追加のJavadocオプション」にjavadoc.exeの実行時オプションを加えることが出来る。

Javadocを表示したときのブラウザーのタイトルバーに文言を表示するには、windowtitleオプションを指定する。
(文言にスペースを含める場合は引用符が必要。ただしダブルクォーテーションでは実行時にJavaScriptのエラーとなるので、シングルクォーテーションを使う必要がある。(タイトルはJavaScriptで設定しており、ダブルクォーテーションを使っている為)
文言にシングルクォーテーションを含めたい場合は、「\'」とする)

-windowtitle 'Hishidama\'s Java library'

e 概要 (Hishidama's Java library)
 _  ×

JRE(JDK)のバージョン変更

バージョンの違う複数のJava(JRE・JDK)がインストールされている場合、Eclipseではプロジェクト毎に使用するバージョンを変更することが出来る。[2007-02-03]

  1. 「パッケージ・エクスプローラー」内で、設定したいプロジェクトを選択する。
  2. メニューバーの「プロジェクト(P)」→「プロパティー(P)」で「プロパティー」ダイアログを開く。
  3. 左側のツリーから「Javaのビルド・パス」を選択する。
  4. 右側のタブから「ライブラリー(L)」を選択する。
  5. 「ビルド・パス上のJARおよびクラス・フォルダー(A)」から「JREシステム・ライブラリー」を選択する
  6. 「編集(E)」ボタンを押して、「ライブラリーの編集」ダイアログを開く。
  7. 「システムライブラリー」から「代替JRE(J)」(ラジオボタン)を選択する。
  8. コンボボックスから使用したいバージョンを選択する。
    使用したいバージョンが見当たらない場合、「インストール済みのJRE(I)」ボタンを押して、OSにインストールされているJREを追加する。

あるいは 以下のような方法も可。[2007-09-27]

  1. 「パッケージ・エクスプローラー」内で、「JREシステムライブラリー」を右クリックする。
  2. 「ビルド・パス(B)」→「ビルド・パスの構成(C)」を選択する。
  3. あとは上記5以降と同様。

Eclipseでデフォルトとして使われるバージョンは、以下のようにして変更する。

  1. メニューバーの「ウィンドウ(W)」→「設定(P)」で「設定」ダイアログを開く。
  2. 左側のツリーから「Java」→「インストール済みのJRE」を選択する。
  3. 右側のテーブルの、デフォルトにしたいバージョンのチェックボタンをクリックする(チェックが付く)。
    使用したいバージョンが見当たらない場合、「追加(A)」ボタンで新しいバージョンを指定する。
    あるいは変更したい場合は「編集(E)」ボタンを押す。
    設定内容は以下のような感じ。
    項目名 値の例 概要
    JREタイプ 標準VM  
    JRE名(N) j2re1.5 JREの名称
    ホームディレクトリーを指定すると自動で入る)
    JREのホーム・ディレクトリー(J) C:\Program Files\Java\jdk1.5.0_09 JDK(JRE)がインストールしてある場所
    (「参照」ボタンでディレクトリーを指定する)
    デフォルトVM引数(A)   特に入れてない
    JREシステム・ライブラリー C:\Program Files\Java\jdk1.5.0_09\jre\lib\rt.jar
    ホームディレクトリーを指定すると自動で入る

ちなみに JDK1.5をインストールした場合、ホームディレクトリーには「〜java\jdk1.5〜」と「〜java\jre1.5〜」のいずれを指定しても開発は出来る。
が、JDKにしておくとソースが付いている(Eclipse上から「宣言を開く」(F3キー)等で見られる)ので、JDKの方がお勧め。
まぁJREでも1.4までならjadがあれば見られるけど。


Eclipse目次へ戻る / 技術メモへ戻る / Eclipse2へ行く
メールの送信先:ひしだま