0

たぶん、問題を説明する正しいキーワード/概念を見逃しただけかもしれません。

範囲:

  • 私は、Eclipse Indigo 内で JDK6 および JDK7 を使用してプロジェクトをビルドすることに慣れています。
  • 特定のライブラリの場合、2 つのソース コード バージョンを使用する必要があります (それぞれ JDK6 または JDK7 に固有)
  • ただし、間違った JDK に対してエラーがスローされるため、一度に 1 つだけしか使用できません!

問題:

  • Eclipse内で選択したJDK/JREに依存する特別なパッケージ/ファイルフォルダを排他的に切り替える(またはアクティブにする)方法は?
  • コンパイル時にソースコードのインクルードを制御するために私が知っているC++マクロの種類はありません:)

ANT または他のスクリプト化されたビルド環境にバイパスすることなく、Eclipse で使用できるオプションはありますか?

4

1 に答える 1

0

これを行うには、プラグインを使用し、プラグインの実行環境を目的のJREに依存するように設定します。ただし、実行環境のチェックにより、実行環境が満たされる(または必要な値よりも大きい)ときにプラグインが有効になります。特に、JRE7コードがJRE6コードを「オーバーライド」するようにフラグメントを使用することをお勧めします。

これを行う方法は、JRE6コードをベースプラグインに含めることです。ただし、プラグインのクラスパスで、最初に存在しないJARファイルを参照し、次に「。」を参照するようにします。(ベースプラグインのコードを取得するため)。次に、JARファイルにJRE6クラスを置き換えるクラスを提供するJRE7フラグメントを用意します。(それ以外の場合、OSGiのプラグインをフラグメントでオーバーライドすることはできません)。

IDEでPDEを使用してコードをテスト実行する場合にも、これは正しく機能するはずです。

于 2011-12-18T16:21:40.477 に答える