2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Eclipse使用】作成中のワークスペースを他のPCに移す際の注意

Last updated at Posted at 2020-09-24

#備忘録と共有
プログラミング初心者の私が、Eclipseを使用してJavaでWebアプリケーションを作っていた時の事。
ワークスペース→プロジェクトを作成し、色々コードを書いていたのですが、違うPCで作業をしなくてはならなくなったため、ワークスペースごとコピーして別の端末に移して作業をしようとした際に起こった困った事。

###次のようなエラーが出てしまいました
1.jpg

下部のマーカータブで、①javaのビルドパスの問題、②ファセット・プロジェクトの問題が出ています。

##前提・考察
Eclipseでは、ワークスペースの設定はワークスペースごとに.metadataファイルに保存される。
ワークスペースごとコピーして違う環境にデータを移した時に、移動先のEclipseと設定ファイルとの間で、上手く設定の受け渡しが出来なかったのか、上記のエラーがでてしまったのだと考えます。
最初に作業したPCで設定したパースペクティブやテーマの設定も、初期化されてしまいました。
プロジェクトは読み込まれていない状態で、サーバーは作成されていない状態です。

プロジェクトはインポートメニューから、「既存のプロジェクトをワークスペースへ」でインポートしましたが、
ワークスペースの設定と、プロジェクトごとの設定が、うまくうまくリンクしなかったのではないか。

####プロジェクトのプロパティを見てみる

この状態で、インポートしたプロジェクトを右クリック>プロパティから、Javaのビルドパスを開くと、《JREシステム・ライブラリー》がアンバインド済みとなっています。
また、《サーバ・クラスパス・コンテナ》も同じくアンバインド済みです。

2.jpg
これは、プロジェクトの設定は、前のPCからのものが引き継がれているが、ワークスペースのそれとは違っているということなのでしょうか。

#JREシステム・ライブラリから解決する
JREシステム・ライブラリを選択した状態で、編集をクリックすると、下の画面が表示される。
3.jpg
↑インストール済みのJREをクリック

4.jpg
↑検索をクリック

5.jpg
↑JREがインストールされているフォルダを選択すると、自動的に検索・追加を行ってくれる

6.jpg
↑インストール済みのJREに検索したものが追加された。
移行前のPCではjava11だったため、11を選択してデフォルトに設定しておく。

7.jpg
↑画面を戻ると、代替の欄で追加したJREを選択することが出来るようになっているので、11にしておく。

8.jpg
↑すると、最初に表示されていた×が消えました。
なぜか、適用して閉じ、また開くと×が付いているので、再度インストール済みのJREから指定のバージョンを選択する作業をすると、×とアンバインド済みの表示が消え、モジュールパスの方に移動した。(下の画像)

9.jpg

#次に、サーバ・クラスパス・コンテナーを解決する
今回は、ワークスペースを開いた段階でサーバが作成されていなかった状態なので、サーバを作成する。
下部の、「使用可能なサーバがありません。このリンクをクリックして新規サーバを作成してください」をクリック。
12.jpg

今回はTomcat9だったので、それを選択する(次の画像の左窓)。
また、注意しないといけないのが、サーバー名の下の、サーバ・ランタイム環境の設定である。
サーバ・ランタイム環境の右下の「ランタイム環境の構成」をクリックすると、画像の右窓がでてくるので、Apache Tomcatの名前の箇所を選択する。すると、右側の編集ボタンが選択できるようになるので、クリックする。

13.jpg

すると、次のように現在選択されているサーバ・ランタイムの環境が表示される
14.jpg
↑Tomcatのインストールディレクトリの確認と、先ほど解決したJREシステム・ライブラリの設定と紐づいていないといけない。
ここでは、先ほどすでにJava11をデフォルトJREに設定してある為、JREの欄はワークベンチ・デフォルトJREで問題ない。

もし違うJREが選択されていたら、直すか、最初の新規サーバの定義の窓から、「追加...」をクリックして設定する。

####確認
プロジェクトを右クリック>Javaのビルドパスを再度開き、ライブラリータブをみると、サーバ・クラスパス・コンテナがアンバインド済みになっているが、ここを選択した状態で、右側の編集ボタンをクリックする。

すると、下の画像の右側の窓がでるので、先ほど設定したランタイム(他の設定を作成していれば、それも表示される)を選択する。
15.jpg

↓最後に、プロジェクトのプロパティまで画面を戻り、ターゲット・ランタイムの項目をクリックすると、ランタイム一覧が表示されるので、ここも、先ほど設定したランタイムにチェックが入るようにする。
(私の場合は違うところにチェックが入っていた)
16.jpg

これで、適用して閉じれば、全てのエラーが消えました。
(文字コードや、警告/エラーで個別の設定をしている場合は、それは別で設定し直さないといけません)

#もしかすると
もしかすると、これが一番重要かもしれませんが。
ワークスペースごと違う環境にフォルダを移動するには、エクスポート/インポートを使用するべきなのかもしれません。
「ワークスペースごと」と言いましたが、正確には、「ワークスペース(の設定)を」です。

####エクスポート
◆ファイル>エクスポート
開いたエクスポートウィザードで、一般>設定→次へ

「すべてエクスポート」にチェックが入った状態で、宛先設定ファイルからエクスポート先のフォルダ名・ファイル名を指定して完了をクリックすると、指定した場所に.epfファイルが出来ています。(このファイルにはプロジェクトは含まれていません)

####インポート
インポートする際は、
まず、Eclipseを起動する時には何かしらのワークスペースを開くと思いますが、そこに、先ほどエクスポートしたワークスペースの設定(.epf)を読み込むといったイメージです。
プロジェクト自体は、出来上がったワークスペースに、インポートする形で読み込んで使用します。
インポートする際に、読み込んだプロジェクトをワークスペースにコピーする設定もあったと思いますので、必要に応じて選択する必要があります。

◆ファイル>インポート
開いたインポートウィザードで、一般>設定→次へ

すべてインポートにチェックが入った状態で、完了

##最後になりますが
長々と呼んで頂き、ありがとうございました。
プログラミングに関しても、Eclipse使用歴に関しても短い為、理解がまだ浅い部分はありますが、問題は時間が掛かっても1つひとつ解決していきたいと思っています。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?