プログラミング応用a 第10回 Eclipseでパッケージを作成する方法 |
10-7 【Ecliipseでのパッケージの扱い】
※2024/6/19(水)までの古いEclipseの画面を使った資料はこちら。
※Eclipse での Javaプロジェクトの作成方法が未だ理解できていない場合は,こちらで復習し,実際に Eclipse でプロジェクトを作成してみること。
●Eclipse では,以下の様に操作することで,自動的にパッケージのフォルダ階層ができあがる。
■手順1:プロジェクトのソースフォルダ「src」にパッケージを追加する。図の例ではプロジェクト名を「PackageTest」としている。
・プロジェクトフォルダ内の 「src」フォルダの上で右クリック(①)。表示されたサブメニューから「パッケージ」を選んで(②)新規にパッケージを作成する。
■手順2:「新規Javaパッケージ」ウィンドウが表示されるので,「package-info.javaを作成する」のチェックを外しておき(①),
パッケージ名を入力し(②),「完了」ボタンを押す(③)。
■手順3:すると,「src」フォルダ内にパッケージ「com.kaishamei.dev」を表すフォルダが出来上がる(①)。
※次に,パッケージにソースファイルを追加するが,ソースファイルを新規に作成してパッケージに追加する場合はそのまま手順4へすすむ。初学習時はまず手順4へ進もう。
※もし,パッケージに既存のソースファイルを追加するには,「パッケージエクスプローラー」ウィンドウ上で,ドラッグ&ドロップ操作でソースファイルを目的のパッケージフォルダ
へ移動させれば良い。その後は手順7に進む。
■手順4:では,作成したパッケージ「com.kaishamei.dev」内に,このパッケージに所属するクラスを定義したJavaのソースファイルを追加しよう。
・「com.kaishamei.dev」パッケージフォルダの上で右クリックして表示されたサブメニューで「新規」を選ぶ(①)。
・表示されたサブメニューの「ファイル」を選ぶ(②)。
■手順5:すると,「新規ファイル」ウィンドウが表示される。
・「新規ファイル」ウィンドウで,作成した「com.kaishamei.dev」パッケージが実際にフォルダ階層としてできていることが確認できる(①)。
・ソースファイル名を入力し(②),「完了」ボタンを押す(③)。
■手順6:以上の手順によって,目的のパッケージにソースファイルを追加することが出来た。
・追加したソースファイル(この例では TestTools.java)がテキストエディタウィンドウで開かれる(①)。
・追加したソースファイルが,「com.kaishamei.dev」パッケージのフォルダ内に保存されていることが確認できる(②)。
■手順7:もちろん,こうやってパッケージに所属させたソースファイルでは,適切なパッケージ宣言が必要になる。
・追加したソースファイル(例: TestTools.java)でクラスを定義するとき,適切なパッケージ宣言をしないとエラーとなる。
Eclipseでは,コンパイル前に判明したエラーも表示してくれる(①, ②)。
・エラーアイコン上にマウスカーソルをのせると,エラーメッセージが表示される(②)。
ここでは,サンプルのソースファイル上で明示的にパッケージ宣言をしていない。これはデフォルトパッケージの宣言をしていると見なされる。
一方,ソースファイルが保存されている位置から本当は com.kaishamei.dev パッケージに所属するというパッケージ宣言をしなければならないはずである。
このような矛盾がおこっているので,下図のようなエラーメッセージが表示されているのである(③)。
■手順8:適切なパッケージ宣言をしよう。
・適切なパッケージ宣言を行うと,前出のエラーは消える(①)。
■手順9:複数のパッケージを作成する場合(その1)
・「src」フォルダに,新たなパッケージ「com.kaishamei.util」を追加してみよう。パッケージの作成方法はパッケージ「com.kaishamei.dev」
を作成したときと同じである。
・下図が新パッケージ「com.kaishamei.util」を追加した状態である (①)。次のステップでは,ここにソースファイルを追加してみよう。
■手順10:複数のパッケージを作成する場合(その2)
・前の手順で新たに作成したパッケージ「com.kaishamei.util」にソースファイルを追加しよう。やり方は,「TestTools.java」を
パッケージ「com.kaishamei.dev」に追加した方法と同様で,「com.kaishamei.util」パッケージの上で右クリックし,
「新規」サブメニュー→「ファイル」サブメニューを選ぶ(①〜②)。
■手順11:複数のパッケージを作成する場合(その3)
・「新規ファイル」ウィンドウが表示されるが,このとき,事前に作成した com.kaishamei.util がフォルダとして作成されていることが分かる(①)。
特に, dev サブパッケージフォルダと util サブパッケージフォルダが,同じ親パッケージ com.kaishamei のフォルダの中に位置していることを確認しよう。
・ファイル名にソースファイル名を入力する。ここでは,例として A.java としてみる(②〜③)。
■手順12:複数のパッケージを作成する場合(その4)
・すると, com.kaishamei.util パッケージのフォルダの中にソースファイル A.java が追加され(①),テキストエディタでソースファイルが開かれる(②)。
■手順13:複数のパッケージを作成する場合(その5)
・前の手順で追加したソースファイル A.java でクラス A を定義した。クラス A の中で TestTools クラスを利用しているが,そこでエラーが起こっている(①,②)。
・エラーが起こっているのは,TestTools が他のパッケージ( com.kaishamei.dev )のクラスなのに,適切なインポート宣言がされていないためである(③)。
・次の手順でこの問題を解決しよう。
■手順14:複数のパッケージを作成する場合(その6)
・適切な import 宣言(import com.kaishamei.dev.TestTools; )をソースコードに追加することで,エラーが無くなる(①)。
■おまけ:パッケージ階層の見え方を変える(その1)。
・Eclipse では,下図のようにパッケージ・サブパッケージの表示が階層的に表示されている。このパッケージの表示方法をEclipseでは"「階層」表示"という。
■おまけ:パッケージ階層の見え方を変える(その2)。
つぎにパッケージの見え方を"「フラット」表示"という別の表示方法に変えて見よう。
・パッケージエクスプローラウィンドウの右上にある「…」が縦になったアイコンをクリックして現れるメニューから「パッケージ・プレゼンテーション」を選ぶ(①)。
・表示されるサブメニューで「フラット」を選ぶ(②)。
■おまけ:パッケージ階層の見え方を変える(その3)。
・すると,下図のように2つのパッケージ「com.kaishamei.dev」と「com.kaishamei.util」が個別かつ並列に表示される(①)。
この表示形式を"「フラット」表示"と呼ぶ。
・「フラット」表示は「階層」表示に比べて,縦に表示スペースを消費しないので,多くのパッケージを作成しているときに向いている。
・「階層」表示に戻したいときは,「パッケージプレゼンテーション」メニューで「階層」を選べば良い。
●以上で,Eclipse 上でのパッケージの扱いについての紹介を終わる。