デフォルトでは、バンドルは、ビルドを実行するために使用されている JRE、または、1.3 と 1.2 に設定されたソースおよびターゲット・レベルでコンパイルされます。
PDE ビルドは、各バンドル・ベースでコンパイル中に使用される JRE を構成できます。
これを利用するために、最初にどの JRE が使用可能かを PDE ビルドに通知する必要があります。
ビルド構成 build.properties ファイルで、インストールされている各 JRE を指すようにプロパティーを設定します。 org.eclipse.pde.build/templates/headless-build に提供されているテンプレート build.properties には、環境のリスト (コメント化されています) があります。
使用可能な JRE のプロパティーのコメントを外して、ブート・クラスパスに属する jar となるように値を設定します。
例えば、プロパティーを以下のように設定すると、
rt.jar と jsse.jar に対して java 1.5 を必要とするバンドルをコンパイルします。
プロパティーの名前は、PDE ビルドが認識している環境の名前と一致する必要があります。
PDE ビルドは、それぞれの環境のソースおよびターゲット・レベルを自動的に設定します。
PDE ビルドが認識している環境と、関連するソース/ターゲット・レベルは以下の通りです。
環境 |
ソース |
ターゲット |
CDC-1.0/Foundation-1.0 |
1.3 |
1.1 |
CDC-1.1/Foundation-1.1 |
1.3 |
1.2
|
OSGi/Minimum-1.0 |
1.3 |
1.1 |
OSGi/Minimum-1.1 |
1.3 |
1.2
|
JRE-1.1 |
1.1 |
1.1 |
J2SE-1.2 |
1.2
|
1.1 |
J2SE-1.3 |
1.3 |
1.1 |
J2SE-1.4 |
1.3 |
1.2
|
J2SE-1.5 |
1.5 |
1.5 |
JavaSE-1.6 |
1.6 |
1.6 |
PersonalJava-1.1 |
1.1 |
1.1 |
PersonalJava-1.2 |
1.1 |
1.1 |
CDC-1.0/PersonalBasis-1.0 |
1.3 |
1.1 |
CDC-1.0/PersonalJava-1.0 |
1.3 |
1.1 |
CDC-1.1/PersonalBasis-1.1 |
1.3 |
1.2
|
CDC-1.1/PersonalJava-1.1 |
1.3 |
1.2
|
<buildDirectory>/plugins/bundleA/
META-INF/manifest.mf: Bundle-RequiredExecutionEnvironment: CDC-1.0/Foundation-1.0, J2SE-1.3
build.properties: jre.compilation.profile=J2SE-1.4
<buildConfiguration>/
build.properties: J2SE-1.3=C:/Java1.3/jre/lib/rt.jar;C:/Java1.3/jre/lib/i18n.jar
J2SE-1.4=C:/Java1.4/jre/lib/rt.jar;C:/Java1.4/jre/lib/jsse.jar
上記セットアップで、考慮される環境のリストは、順に、J2SE-1.4、 CDC-1.0/Foundation-1.0、J2SE-1.3 となります。
バンドルは CDC/Foundation および J2SE-1.3 上で実行できますが、ある理由から、 J2SE-1.4 を使用してコンパイルする必要があります。
この場合、J2SE-1.4 は、ビルド構成で設定され、環境リストで先頭になっているので、バンドルをコンパイルする際に使用されます。
このケースで使用したソースとターゲットのレベルは、1.3 および 1.2 です。
ビルド構成が J2SE-1.4 ではなく J2SE-1.3 のみを定義した場合、J2SE-1.3 は JRE が使用可能なリストで唯一の環境となり、バンドルをコンパイルするために使用されます。
その場合、ソースおよびターゲット・レベルは、1.3 と 1.1 になります。