Java の世界で非常に居心地が悪いと感じている人のビジョンを紹介しますが、それはあなたも同じだと思います。
それは何ですか
ワークスペースは、グループ化の概念です。
- (どういうわけか) 関連するプロジェクトのセット
- これらすべてのプロジェクトに関連するいくつかの構成
- Eclipse自体のいくつかの設定
これは、ディレクトリを作成し、その中にファイルを配置することによって行われます (それを行う必要はありません。自動的に行われます)。Eclipse にこれらの情報を伝えることができます。明示的に行う必要があるのは、これらのファイルが配置されるフォルダーを選択することだけです。また、このフォルダーは、ソース コードを配置した場所と同じである必要はありません。そうでないことが優先されます。
上記の各項目を調べる:
- (どういうわけか) 関連するプロジェクトのセット
Eclipse は常に特定のワークスペースに関連して開かれているようです。つまり、ワークスペース A にいて、ワークスペース Bに切り替えることにした場合([ファイル] > [ワークスペースの切り替え])、Eclipse は自動的に閉じて再度開きます。ワークスペース Aに関連付けられていた(そして Project Explorer に表示されていた) すべてのプロジェクトは表示されなくなり、ワークスペース Bに関連付けられたプロジェクトが表示されるようになります。そのため、プロジェクトを Eclipse で開くには、ワークスペースに関連付ける必要があるようです。
これは、プロジェクトのソース コードがワークスペース内にある必要があるという意味ではないことに注意してください。ワークスペースは、どういうわけか、ディスク内のプロジェクトの物理パスと関係があります (誰もがその方法を知っていますか?ワークスペース内を調べて、プロジェクトのパスを指すファイルを探しましたが、成功しませんでした)。
このようにして、プロジェクトは一度に複数のワークスペース内に存在できます。したがって、ワークスペースとソース コードを分けておくとよいようです。
- これらすべてのプロジェクトに関連するいくつかの構成
Java コンパイラのバージョン (たとえば 1.7 など - 「バージョン」という言葉がここにあるかどうかはわかりません) のようなものは、ワークスペース レベルの構成であると聞きました。ワークスペース内に複数のプロジェクトがあり、それらを Eclipse 内でコンパイルする場合、それらはすべて同じ Java コンパイラでコンパイルされます。
- Eclipse自体のいくつかの設定
キー バインディングなどの一部は、ワークスペース レベルでも保存されます。そのため、ctrl+tab がタブをスマートな方法で切り替える (タブを積み重ねない) ように定義すると、これは現在のワークスペースにのみバインドされます。別のワークスペースで同じキーバインディングを使用したい場合 (そして私はそう思います!)、ワークスペース間でそれらをエクスポート/インポートする必要があるようです (それが本当なら、この IDE はいくつかの非常に奇妙な前提の上に構築されています)。ここにリンクがあります。
ワークスペースは、異なる Eclipse バージョン間で必ずしも互換性があるとは限らないようです。この記事では、ワークスペースに Eclipse バージョンの名前を含む名前を付けることをお勧めします。
さらに重要なことは、ワークスペースにするフォルダーを選択したら、そのフォルダー内のファイルに触れないでください。何らかの問題が発生する可能性があります。
良い使い方だと思うのは
(実際、これを書いているとき、これを良い方法で使用する方法がわかりません。そのため、ここで組み立てようとしている答えを探していました)
プロジェクト用のフォルダーを作成します。
/projects
プロジェクトごとにフォルダーを作成し、その中にプロジェクトのサブプロジェクトをグループ化します。
/projects/proj1/subproj1_1
/projects/proj1/subproj1_2
/projects/proj2/subproj2_1
ワークスペース用に別のフォルダーを作成します。
/eclipse-workspaces
プロジェクトのワークスペースを作成します。
/eclipse-workspaces/proj1
/eclipse-workspaces/proj2