2010-12-05 18 views
0

非常に単純なJavaプロジェクトを作成しようとしていますEclipse SDK バージョン:3.6.1 ビルドID:M20100909-0800同じタイプのjavaソースファイルを持つEclipseの異なる出力フォルダを持つ2つの異なるソースフォルダ

同じJavaソースファイルを持つ異なる出力フォルダを持つ2つの異なるソースフォルダを持つ。 しかし、プロジェクトでCTEを取得しています。以下は

プロジェクトの.classpathファイルです: -

<?xml version="1.0" encoding="UTF-8"?> 
<classpath> 
    <classpathentry kind="src" output="myBin" path="mySrc"/> 
    <classpathentry kind="src" output="yourBin" path="yourSrc"/> 
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/> 
    <classpathentry kind="output" path="bin"/> 
</classpath> 

また、プロジェクトエクスプローラのスクリーンショットの下に見つける: - 私もthisを見つける

alt text

googlingしながら。

この問題を回避するには、大変感謝しています。おかげさまで ;)


編集:

は実は、私は継続的に強化しています単一のプロジェクトを、持っていると一緒にすべてのバージョンを保存しておきたいです。私はこのアプローチをhereからgoogledしました。このより良いアプローチのためのどんなハックも歓迎されます。

+0

同じクラスを定義している2つのソースフォルダがあると、どのようなことが起こりますか? – aioobe

答えて

2

Eclipseソースフォルダに、同じFQCNの2つのクラス(完全修飾クラス名)を使用することはできません。

ただし、CLASSPATHに同じFQCNの2つのクラスを設定できます。 1つはソースフォルダに、もう1つは依存関係(JARファイルなど)にあります。次に、クラスローダーによって検出された最初のものがロードされ、JVMによって使用されます( Java仮想マシン)。ここではCLASSPATHの順序が重要です。

これが役に立ちます。

0

最も簡単な回避策は、ソースフォルダごとに異なるパッケージ名を付けることです。バージョンを維持したい場合は、

  1. ソースコントロールを使用できます。
  2. はEclipseの組み込み履歴を使用します。
  3. ソースフォルダだけでなく、バ​​ージョン名のプロジェクトにプロジェクト全体をコピーします。
  4. ソースフォルダをソースではないディレクトリにコピーします。
関連する問題