Par défaut, les bundles sont compilés avec l'environnement JRE utilisé pour exécuter la génération, et avec les niveaux source et cible 1.3 et 1.2.
La compilation PDE peut configurer l'environnement JRE utilisé lors de la compilation de chaque bundle. Pour en tirer parti, vous devez avant tout chose indiquer à la compilation PDE les environnements JRE disponibles. Dans le fichier build.properties de configuration de la génération, faites pointer les propriétés vers chacun des environnements JRE installés. Le modèle de fichier build.properties fourni dans org.eclipse.pde.build/templates/headless-build contient la liste des environnements mis en commentaires. Supprimez simplement la mise en commentaire des propriétés pour lesquelles vous disposez d'environnements JRE, et définissez la valeur des fichiers JAR qui figurent dans le chemin de classes d'amorçage. Par exemple, la définition de la propriété :
compile les bundles nécessitant Java 1.5 par rapport à rt.jar et jsse.jar. Les noms des propriétés doivent correspondre aux noms des environnements que la compilation PDE connaît.
La compilation PDE définit automatiquement les niveaux source et cible de chaque environnement. Les environnements que connaissent les générations PDE et leurs niveaux source/cible associés sont les suivants :
Environnement |
Source |
Cible |
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
Dans la configuration ci-dessus, la liste des environnements considérée (dans l'ordre) est : J2SE-1.4, CDC-1.0/Foundation-1.0, J2SE-1.3. Le bundle peut être exécuté dans
CDC/Foundation et J2SE-1.3, mais pour certaines raisons, il doit être compilé avec J2SE-1.4. Dans ce cas, J2SE-1.4 est défini dans la configuration de génération, et figure en premier dans la liste des environnements ; par conséquent il est utilisé pour compiler le bundle. Dans ce cas, les niveaux source et cible 1.3 et 1.2 sont utilisés. Si la configuration de la compilation définit J2SE-1.3, mais pas J2SE-1.4, J2SE-1.3 est le seul environnement de la liste pour lequel un environnement JRE est disponible. Par conséquent, il est utilisé pour compiler le bundle. Dans ce cas, les niveaux source et cible 1.3 et 1.1 sont utilisés.