0. eclipse (エクリプス) とは
- http://www.eclipse.org/
- http://eclipsewiki.net/eclipse/
- http://www.itmedia.co.jp/dict/programming/tools/04018.html
1. eclipseの起動
まずは開発環境のEclipseを起動する (図 1)。
- 画面左下のスタートボタンをクリックする
- マウスカーソルを、プログラム > Eclipseと移動していく
- Eclipse3.1.xをクリックする
図 1. eclipseを起動する
成功するとスプラッシュウィンドウが表示される (図 2)。この際、eclipse 3.1 と表示されていることを確認すること。
図 2. スプラッシュウィンドウ
初めて起動した際には、「ようこそ」と表示される (図 3)。左上のほうに「ようこそ ×」とあるので、×をクリックしてこの画面を終了させる。
図 3. ようこそ
2. eclipseの初期設定
次に、eclipseの初期設定を行う。Eclipseを始めて実行した際には必ず行うこと。まずは、Eclipse全体のウィンドウの上部にあるメニューのうち「ウィンドウ(W)」をクリックする。するとメニューが表示されるので、「設定(P)」をクリックする (図 4)。
図 4. 設定の変更
設定画面が表示されるので、次の手順で設定を変更する。 (図 5, 図 6)
- 左側エリア内の「ワークベンチ」の左側についている「+」をクリック
- サブメニューが表示されるので、そのうちの「エディター」の左側についている「+」をクリック
- さらにサブメニューが表示されるので、そのうちの「テキスト・エディター」をクリック
- 右側にある「行番号を表示」をクリック
図 5. 設定項目 (エディター)
- 左側エリア内の「Java」の左側についている「+」をクリック
- サブメニューから、「ビルド・パス」をクリック
- ソースおよび出力フォルダーを「フォルダー」に設定
- 右下にある「OK」をクリック
図 6. 設定項目 (ビルド・パス)
これで、最低限の設定は終了となる。本教室以外で作業する場合にも、この設定をはじめに行うこと。
3. プロジェクトの作成
作成するプログラムは、「プロジェクト」という単位で格納される。まずは以下の手順でプロジェクトを作成する。 (図 7)
- ウィンドウの左上にある「ファイル (F)」をクリック
- 「新規」にマウスカーソルを合わせる
- 「プロジェクト(R)…」をクリック
図 7. プロジェクトの新規作成
新規プロジェクトの作成ウィザードという、新しく作るプロジェクトの設定を行うためのウィンドウが開く。
まず、一つ目のウィンドウ (図 8) では、「Javaプロジェクト」が青くなっていることを確認して、「次へ (N) >」をクリックする。
図 8. プロジェクトの作成 (1)
次に、プロジェクト名を決定する (図 9)。今回は「プロジェクト名」というところに「java20XX」と入力する。そして、「プロジェクト・レイアウト」で「別の場所にソースおよび出力フォルダーを作成」が選択されていることを確認すること。もしここで、「別の場所にソースおよび出力フォルダーを作成」されていない場合は、「キャンセル」ボタンを押して"2. eclipseの初期設定"の項まで戻って設定を再度行った後にプロジェクトを作成すること。問題なければ「終了」ボタンをクリックする。
図 9. プロジェクトの作成 (2)
設定を終了すると、確認メッセージ (図 10) が表示されることがあるので、表示された場合は「はい」をクリックする。
図 10. 確認メッセージ
本演習ではこのプロジェクトを使い続けることになる。
4. プログラムの作成
「3. プロジェクトの作成」で作成したプロジェクト内で、実際にプログラムを作ってみる。
4.1. パッケージの作成
次の手順でクラス(プログラム)を格納するための「パッケージ」を作成する (図 11)。
- 「java20XX」プロジェクトの左側にある「+」をクリック
- ツリーが展開されるので、「src」の上で右クリック
- マウスカーソルを「新規」に合わせる
- 「パッケージ」をクリック
図 11. 新規パッケージの作成
「新規 Java パッケージ」というウィンドウが開くので、「名前」欄に半角文字 (英語や数字を入力するモード、キーボードの半角/全角キーで切り替え)で「j1.lesson01」と入力する (図 12)。正しく入力できたことを確認したら、右下の「終了」ボタンをクリックして確定する。
図 12. パッケージ名の入力
このパッケージは今回のみ使用する。末尾の2桁の数字が講義回数を表している。
パッケージ名を間違えた場合は「A. トラブルシューティング」の項を参照のこと。
4.2. クラスの作成
次の手順でメソッド(一連の命令文のかたまり)を記述するための「クラス」を作成する (図 13)。
- 先ほど作成したパッケージ 「j1.lesson01」の上で右クリック
- マウスカーソルを「新規」に合わせる
- 「クラス」をクリック
図 13. 新規クラスの作成
「新規 Java クラス」というウィンドウが開くので、まずは「パッケージ(K)」が先ほど入力した「j1.lesson01」になっていることを確認すること。間違っていた場合は、ここに「j1.lesson01」と入力する。
次に、「名前(M)」に「Hello」と入力する。大文字の'H'をタイプするには、'Shift'キーを押しながら'H'キーをタイプする。
「どのメソッド・スタブを作成するか?」という項目では、全てのチェックを外す。
最後に、全ての項目を確認した後、右下の「終了」ボタンをクリックして確定する。
図 14. 新規クラスの設定
成功すると、次のような画面が出力されるはずである (図 15)。
何か間違えた点があれば、「Hello.java」を右クリックし、「削除(D)」を選択することでクラスの作成をやり直すこともできる。
図 15. 生成されたクラス
クラス名を間違えた場合は「A. トラブルシューティング」の項を参照のこと。
4.3. コメント
プログラムには、実行に影響を及ぼさない「コメント」と呼ばれるものを書くことができる。コメントは以下のように書く。
// (注釈を書く)
上記のように先頭に // と書くと、それ以降は注釈とみなされ、実行には影響しない。以下は行コメントの例である。
package j1.lesson01; // 初めてのJavaプログラム public class Hello { }
4.4. 途中結果の保存とコンパイル
図 16の左上のタブには「*Hello.java」とある。この「*」マークは「プログラムに変更があったが、まだ保存されていない」という状態を表している。ここまでのHelloクラスに対する作業を保存する (図 17)。
- eclipseウィンドウの左上の方にある「ファイル(F)」をクリック
- メニューが表示されるので「保管(S)」をクリック
もしくは、単純にキーボードのCtrlキーを押しながらSキーを押すことによっても同様の効果が得られる。通常はこちらを使用する。
図 17. 途中結果の保存
この作業によって、「*」マークが消える。
本演習では、少し書いたらすぐ保存という癖をつけること。これには、次のような利点がある。
- コンピュータがフリーズしてしまっても、プログラムが残される
- 新しく書いた部分のコンパイルを行ってくれる
たくさん書いた後にコンパイルを行うと、どこでプログラムの文法を間違えたのか分かりにくいことが多々ある。そこで、この「コンパイル」という作業を短いスパンで行うことによって、問題を起こした部分の特定が楽になる。eclipseは初期設定状態では「保存を行った瞬間に自動的にコンパイル」を行ってくれるため、短いスパンで保存する癖をつけること。
エラーが発生した場合は「A. トラブルシューティング」の項を参照のこと。
4.5. メソッドの作成
次に、先ほど作成したクラスの中に、一連の命令文を記述するための「メソッド」を作成する (図 18)。
今回は、プログラムを開始したときに最初に呼ばれるメソッド「public static void main(String[] args){}」(以下、mainメソッドと呼ぶことにする)を作成する。
メソッドというものは、クラスの "{" から "}" までの間におく必要がある。つまり、以下の指定した場所に作成すること。
package j1.lesson01; public class Hello { // この部分にメソッドを作る }
最初は空のメソッド("{" から "}"の間に何も入れない) を作成する。
package j1.lesson01; public class Hello { public static void main(String[] args) { } }
eclipseで作業する場合、
public static void main(String[] args) {
まで入力してEnterキーを押すと、以下の様に "}" を自動で挿入してくれる。
public static void main(String[] args) { }
図 18. mainメソッド
この時点で保存を行って、エラーが発生しないことを確認すること (「4.4. 途中結果の保存とコンパイル」を参照)。エラーが発生した場合は「A. トラブルシューティング」の項を参照のこと。
4.6. 命令文の記述
次に、先ほど作成したmainメソッドの中に、「命令文」を作成する (図 19)。今回は練習ということで、「Hello, world!」と表示するだけの簡単な命令文を記述してみる。"mainメソッドの中に"ということなので、mainメソッドの "{" から "}" までの間に命令文を置く必要がある。つまり、以下の指定した場所に記述すること。
package j1.lesson01; public class Hello { public static void main(String[] args) { // この部分に命令文を書く } }
表示するための命令文として、System.out.println("(文字列)")を使用する。この命令文は「(文字列)」の部分に書いた文字列を出力し、最後に改行を出力する。
package j1.lesson01; public class Hello { public static void main(String[] args) { System.out.println("Hello, world!"); } }
eclipseを使用していると、一つ目の開き括弧やダブルクォーテーションをタイプすると自動的に適切に閉じられる。
System.out.println("Hello, world!")と書いたあとには、忘れずに「;(セミコロン)」をつけること。これは、命令文一つが終了したことを表す記号であり、これをつけずに保存するとエラーが発生する (確認してみよ)。
図 19. Hello, world!
ここまで完成したら、忘れずに保存すること。
5. プログラムの実行
ここまでの結果を保存したら、プログラムを実際に動かしてみることにする (図 20)。
- 「Hello.java」の上で右クリック
- メニューが表示されるので、「実行(R)」にマウスカーソルを合わせる
- 「1 Java アプリケーション」をクリック
「実行」メニューに「Java アプリケーション」が出ない場合は「A. トラブルシューティング」の項を参照のこと。
図 20. プログラムの実行
成功すると、eclipseウィンドウ下部の「コンソール」タブに次のように表示される (図 21)。
Hello, world!
図 21. 実行結果
この作業によって、eclipse内では次のような解釈が行われる。
- j1.lesson01パッケージ内のHelloクラスを探す
- Helloクラス内の mainメソッドを探す
- mainメソッドを実行
- 命令文 System.out.println("Hello, world!") を実行 -> Hello, world と表示する
- mainメソッドを終了
- プログラムの実行を終了
つまり、ここまでに違うことをしていると正しく実行されない可能性がある。
- mainメソッドの名前などが違う -> mainメソッドを見つけられない
- "Hello, world!" が違う -> 違う文字列が出力される
6. プロジェクトの持ち運び
ここでの作業が完結しない場合、ノートPC上での作業になる。
6.1. プロジェクトのexport
教室で作成したプロジェクトは、各自のノートPC上には反映されない。そこで、「エクスポート」という作業を行って持ち運び可能な形式に変換する (図 22-26)。
- プロジェクト「java20XX」の上で右クリック
- メニューが表示されるので、「更新」あるいは「最新表示」をクリック
- プロジェクト「java20XX」の上で右クリック
- メニューが表示されるので「エクスポート(O)」をクリック (図 22)
- 「エクスポート」ウィンドウが表示されるので、「Zip ファイル」を選択
- 「次へ(N)」をクリック (図 23)
- java20XXの左にある「+」をクリック
- ツリーが展開されるので、「bin」のチェックを外す
- 「bin」以外の全てのディレクトリにはチェックがついていることを確認する
- 右側にある全てのファイルにチェックがついていることを確認する
- java20XXのチェックボックスが灰色になったことを確認する
- オプションの「選択したディレクトリのみ作成」をクリックして選択
- To archive file: の右側にある「参照(R)...」あるいは「ブラウズ(R)...」をクリック (図 24)
- 「Export To Archive File」ダイアログが表示されるので、左側にある「デスクトップ」をクリック
- ファイル名(N): に 「java20XX」と入力 (他の名前でも良いが、java20XXとして話を進める)
- 「保存(S)」をクリック (図 25)
- 前の画面に戻るので、To archive file: のエリアに"C:\Documents and Settings\(学籍番号)\デスクトップ\java20XX.zip"と表示されていることを確認
- 右下の「終了(F)」をクリック
図22. エクスポート(1)
図23. エクスポート(2)
図24. エクスポート(3)
図25. エクスポート(4)
図26. エクスポート(5)
ここまでの作業が終わるとデスクトップ上に「java20XX.zip」というファイルが出来上がる (図 27)。
図27. エクスポート結果の確認
このファイルをフロッピーディスクやUSBメモリに保存するか、メールで自分に送るなどして持ち帰ることができる。
ノートPC上の作業内容を持ち運ぶ際も同様の手順になる。
6.2. プロジェクトのimport
次に、エクスポートしたファイルを他のeclipseで使えるようにする。この作業を「インポート」と呼ぶ (図 28-31)。
- eclipseを初めて起動する場合は「2. eclipseの初期設定」を行う
- 「3. プロジェクトの作成」を参考に、空のプロジェクト「java20XX」を作成
- これは、自分のPC内に java20XX というプロジェクトがない場合のみ上を行う
- プロジェクト「java20XX」の上で右クリック
- メニューが表示されるので、「更新」あるいは「最新表示」をクリック
- プロジェクト「java20XX」の上で右クリック
- メニューが表示されるので「インポート(I)」をクリック (図 28)
- 「インポート」ウィンドウが表示されるので、「Zip ファイル」を選択
- 「次へ(N)」をクリック (図 29)
- 宛先フォルダー(L): が「java20XX」になっていることを確認
- From archive file: の右側にある 「参照(R)...」あるいは「ブラウズ(R)...」をクリック (図 30)
- ファイルダイアログが表示されるので、「6.1. プロジェクトのexport」で保存したファイルを選択
- 前の画面に戻るので、From archive file: のエリアに正しいパスが入力されていることを確認
- フォルダ「/」の左にチェックがついていることを確認
- 「警告を出さずに既存リソースを上書き」にチェックがついていることを確認 (上書きしたくないファイルがある場合はチェックを外す)
- 「終了 (F)」をクリック (図 31)
図28. インポート(1)
図29. インポート(2)
図30. インポート(3)
図31. インポート(4)
ここまでの作業が終わると「src」ディレクトリにいままでの作業内容が展開される (図 32)。
図32. インポート結果の確認
失敗した場合は「A. トラブルシューティング」の項を参照のこと。
A. トラブルシューティング
想定範囲内のトラブルと、その解決方法を簡単に記す。
A.1. パッケージ名を間違えた
例えば、「j1.lessun01」というパッケージを誤って作ったとする。
- 「j1.lessun01」を右クリック
- リファクタリング
- 名前変更
- 新しい名前に「j1.lesson01」
- 「OK」
- 警告が出るが「継続」を選ぶ
図A.1.1. パッケージ名変更
図A.1.2. 新しいパッケージ名
図A.1.3. 警告
A.2. クラス名を間違えた
例えば、「Hallo」というクラスを誤って作ったとする。
- 「Hallo.java」を右クリック
- リファクタリング
- 名前変更
- 新しい名前に「Hallo」
- 「OK」
- 警告が出るが「継続」を選ぶ
図A.2.1. クラス名変更
図A.2.2. 新しいクラス名
A.3. 保存したらエラーが出た
文法が間違っている可能性がある。「eclipse」ウィンドウ下部の「問題」タブに書いてある内容をよく読むこと。
例として、public class Hello のブロックのうち、ブロックを閉じる文字 "}" を入れ忘れたとすると、以下のようなエラーが出る (図 A.3.1)。これの示す意味は「構文エラー、クラス本体を完成させるために"}"を入れてください」とあるので、言われたとおりに "}" を挿入すればよい。
図A.3.1. コンパイルエラーの例
A.4. 「実行」メニューに「Java アプリケーション」が出ない
public static void main(String[] args) の名前のうち、いずれかが間違っている可能性がある。
A.5. 実行したらエラーが出た
コンパイルエラーが発生したまま実行しようとすると、図A.5.1のようなメッセージが表示される。
「キャンセル」を押して、文法のチェックを行う (「A.3. 保存したらエラーが出た」を参照)。
図A.5.1. コンパイルエラーで実行
A.6. 正しくインポートされない
エクスポートに失敗していると、せっかく持ち帰ったデータが使えなくなってしまう可能性がある。
その場合のうち、「正しい位置にプロジェクトが展開されなかった」場合のエラーの対処法を示す。
エクスポート時に次のようなことを行うと、プロジェクト内に「java20XX」というフォルダができてしまい、プロジェクトの「src」ディレクトリには何も展開されない (図 A.6.1)。
- java20XXのチェックボックスが灰色になっていない
- オプションの「Create only selected directories」を選択していない
図A.6.1. インポートの失敗例
このような場合は、次のような手順で復帰することが可能である (図 A.6.2-A.6.5)。
- 「java20XX」プロジェクト内の「java20XX」フォルダを右クリック
- 「エクスポート」 (図 A.6.2)
- 「Zip ファイル」
- 「次へ(N) >」 (図 A.6.3)
- 「java20XX」プロジェクト内にある「java20XX」に対して、「6.1. プロジェクトのexport」と同様の操作を行う、ただし、次を確認すること (図 A.6.4)
- 「java20XX」プロジェクトの左にあるチェックボックスが灰色になっていることを確認する
- 「java20XX」プロジェクトの直下にある「java20XX」ディレクトリ以外のディレクトリがチェックされていないことを確認する
- 「java20XX」プロジェクト内の「java20XX」ディレクトリの左にあるチェックボックスが灰色になっていることを確認する
- オプションの「選択したディレクトリのみ作成」が選択されていること
- 上記手順でエクスポートしたプロジェクトを、「6.2. プロジェクトのimport」を参考に再度インポート
- 正しくインポートされたことを確認
- 「java20XX」プロジェクト内の「java20XX」フォルダを右クリック
- 「削除」 (図 A.6.5)
図A.6.2. フォルダのエクスポート
図A.6.3. エクスポートウィンドウ
図A.6.4. フォルダのみのエクスポート
図A.6.5. 余計なフォルダの削除