Käännösympäristön määritys

Oletusarvoisesti resurssijoukot käännetään sen JRE-ympäristön mukaan, jota käytetään koonnin ajoon. Resurssijoukkojen kohdetasoiksi määritetään 1.3 ja 1.2.

PDE-koonti voi määrittää käytettävän JRE-ympäristön kokoonpanon käännöksen aikana resurssijoukkokohtaisesti.  Jotta tätä ominaisuutta voi hyödyntää, PDE-koonnille on ilmoitettava, mitä JRE-ympäristöjä on käytettävissä.  Määritä ominaisuuksia osoittamaan kuhunkin asennettuun JRE-ympäristöösi koonnin kokoonpanon build.properties-tiedostossa.  Kohteessa org.eclipse.pde.build/templates/headless-build olevassa build.properties-mallipohjatiedostossa on kommentoitu luettelo ympäristöistä.  Poista kommenttimerkinnät niistä ominaisuuksista, joiden JRE-ympäristöt ovat käytettävissä ja määritä arvoksi käynnistyksen luokkapolkuun kuuluva jar-arkistojoukko.  Esimerkiksi seuraava ominaisuusmääritys:

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

kääntää resurssijoukkoja, jotka edellyttävät Java 1.5 -tasoa, rt.jar- ja jsse.jar-arkistojen perusteella.  Ominaisuuksien nimien tulee vastata PDE-koonnin tiedossa olevien ympäristöjen nimiä.   PDE-koonti määrittää kunkin ympäristön lähde- ja kohdetasot automaattisesti.  PDE-koontien tiedossa olevat ympäristöt ja niihin liitetyt lähde- ja kohdetasot ovat seuraavat:

Ympäristö
Lähde
Kohde
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

Ympäristön valinta resurssijoukolle

Resurssijoukon käännöksessä käytettävään ympäristöön vaikuttaa kaksi asetusta.  Toinen niistä on manifest-tiedoston ylätunniste Bundle-RequiredExecutionEnvironment.  Tämä ylätunniste on luettelo niistä ympäristöistä, joissa resurssijoukko voidaan ajaa.  Resurssijoukon tulee käyttää vain sellaisia metodeja, jotka ovat kaikkien lueteltujen ympäristöjen oikeassa osajoukossa.  Käännösympäristön tulee vastata ajonaikaista ympäristöä mahdollisimman tarkasti.

Toinen asetus on jre.compilation.profile-ominaisuus resurssijoukon build.properties-tiedostossa.  Tämän ominaisuuden arvoksi tulee määrittää resurssijoukon ensisijainen käännösympäristö, jos Bundle-RequiredExecutionEnvironment-luettelo ei ole riittävä.

Nämä kaksi asetusta muodostavat yhdessä ympäristöluettelon, ensin jre.compilation.profile-ominaisuuden ja sitten ylätunnisteen Bundle-RequiredExecutionEnvironment ympäristöt.  Kyseisen luettelon ensimmäistä koontikokoonpanossa (lisätietoja on edellisessä osiossa) käytettävissä olevaa ympäristöä käytetään resurssijoukon käännökseen.

Esimerkki:
<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

Edellisessä asetuksessa huomioon otettavien ympäristöjen luettelo (vastaavassa järjestyksessä) on: J2SE-1.4,  CDC-1.0/Foundation-1.0, J2SE-1.3.  Kyseinen resurssijoukko voidaan ajaa ympäristöissä CDC/Foundation ja J2SE-1.3, mutta jostain syystä  se tulee kääntää ympäristön J2SE-1.4 avulla.  Tässä tapauksessa J2SE-1.4-ympäristö on määritetty koontikokoonpanossa ja sijoittuu ensimmäiseksi ympäristöluettelossa, joten sitä käytetään resurssijoukon käännöksessä.  Tässä tapauksessa käytettävät lähde- ja kohdetasot ovat 1.3 ja 1.2.  Jos koontikokoonpanossa olisi määritetty vain J2SE-1.3-ympäristö eikä ympäristöä J2SE-1.4, nini J2SE-1.3 olisi ollut luettelon ainoa ympäristö, jonka yhteydessä olisi ollut käytettävissä JRE-ympäristö, joten sitä olisi käytetty resurssijoukon käännöksessä.  Tässä tapauksessa lähde- ja kohdetasot olisivat olleet 1.3 ja 1.1.

Käännöksen arvojen määritys eksplisiittisesti

Jos ympäristöjen käyttö edellä kuvatulla tavalla ei jostain syystä johda haluttuihin asetuksiin, resurssijoukko voi eksplisiittisesti luetella edellyttämänsä asetukset.  Jos esimerkiksi resurssijoukko käyttää J2SE-1.4-ympäristöä niin, että vahvistukset ovat käytössä, lähde- ja kohdetasojen tulee tällöin olla 1.4 oletustasojen 1.3 ja 1.2 sijasta.

Resurssijoukko voi määrittää Java-lähde- ja -kohdetasot eksplisiittisesti määrittämällä ominaisuudetjavacSource ja javacTarget build.properties-tiedostoonsa.  Kyseiset ominaisuudet ohittavat ympäristöasetuksista johdetut arvot.

Vastaavasti ominaisuuden bootClasspath määritys resurssijoukon build.properties -tiedostoon ohittaa jar-arkistojen joukon, jonka perusteella resurssijoukko käännetään.