Nastavení kompilačního prostředí

Ve výchozím nastavení budou vaše balíky kompilovány s kterýmkoliv prostředím JRE používaným ke spuštění sestavení a s úrovněmi zdroje a cíle nastavenými na 1.3 a 1.2.

Sestavení PDE je schopno konfigurace prostředí JRE použitého během kompilace na bázi jednoho balíku.  Chcete-li toho využít, musíte nejprve říci sestavení PDE, která prostředí JRE máte k dispozici.  V souboru konfigurace vašeho sestavení build.properties nastavte vlastnosti, aby odkazovaly na všechna instalovaná prostředí JRE.  Šablona build.properties poskytnutá v org.eclipse.pde.build/templates/headless-build obsahuje seznam prostředí označených jako komentář.  Jednoduše odstraňte značky komentáře u těch vlastností, pro která máte prostředí JRE, a nastavte hodnotu, která má být sadou souborů jar náležejících k cestě ke třídě spouštění.  Například, nastavením vlastnosti:

J2SE-1.5=C:/Java/1.5/jre/lib/rt.jar;C:/Java/1.5/jre/lib/jsse.jar

zkompilujete balíky vyžadující Java 1.5 s použitím rt.jar a jsse.jar.  Názvy vlastností by měly odpovídat názvům prostředí, která sestavení PDE zná.   Sestavení PDE automaticky nastaví úrovně zdroje a cíle pro každé prostředí.  Prostředí, která sestavení PDE zná, a jejich přiřazené úrovně zdroje/cíle jsou tato:

Prostředí
Zdroj
Cíl
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

Výběr prostředí pro váš balík

Existují dvě nastavení, která ovlivňují prostředí používané ke kompilaci vašeho balíku.  Jedním z nich je záhlaví manifestu Bundle-RequiredExecutionEnvironment.  Toto záhlaví představuje seznam prostředí, na kterých bude možné váš balík spustit. Váš balík by měl používat pouze metody, které jsou v náležité podmnožině všech uvedených prostředí.  Je žádoucí, aby vaše prostředí kompilace co možná nejvíce odpovídalo vašemu běhovému prostředí.

Druhým nastavením je vlastnost jre.compilation.profile ze souboru build.properties vašeho balíku.  Hodnota této vlastnosti by měla odpovídat preferovanému prostředí pro kompilaci tohoto balíku, pokud seznam Bundle-RequiredExecutionEnvironment není adekvátní.

Dohromady tvoří tato dvě nastavení seznam prostředí, nejdříve jre.compilation.profile, potom prostředí ze seznamu Bundle-RequiredExecutionEnvironment.  Ke kompilaci vašeho balíku bude použito první prostředí v seznamu, které je k dispozici konfiguraci vašeho sestavení (viz oddíl výše).

Příklad:
<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

Ve výše uvedeném nastavení je seznamem uvažovaných prostředí (v pořadí): J2SE-1.4,  CDC-1.0/Foundation-1.0, J2SE-1.3.  Balík může být spuštěn na CDC/Foundation a J2SE-1.3, ale z nějakého důvodu  by měl být kompilován pomocí J2SE-1.4.  V tomto případě je jako konfigurace sestavení nastaveno (a v seznamu prostředí uvedeno jako první) prostředí J2SE-1.4, takže se použije ke kompilaci balíku.  Úrovně zdroje a cíle použité v tomto příkladě jsou 1.3 a 1.2.  Pokud konfigurace sestavení místo toho definuje pouze J2SE-1.3 a ne J2SE-1.4, bylo by J2SE-1.3 jediným prostředím v seznamu, pro které by bylo k dispozici prostředí JRE, takže by bylo použito ke kompilaci balíku.  V tomto případě by úrovně zdroje a cíle byly 1.3 a 1.1.

Explicitní nastavení hodnot kompilace

Pokud použití prostředí podle výše uvedené osnovy z nějakého důvodu nevede k požadovanému nastavení, je možné, aby balík explicitně uváděl seznam požadovaných nastavení.  Máte-li například balík, který používá J2SE-1.4 s asserty, úrovně zdroje a cíle musí být 1.4 místo výchozích úrovní 1.3 a 1.2.

Chcete-li explicitně nastavit úroveň zdroje a cíle Java, balík by měl ve svém souboru build.properties nastavit vlastnosti javacSource a javacTarget.  Tyto vlastnosti potlačí hodnoty odvozené z nastavení prostředí.

Podobně, nastavení vlastnosti bootClasspath v souboru build.properties balíku potlačí sadu souborů jar, s jejichž použitím bude provedena kompilace.