Vanligvis bør et produkt som er basert på Eclipse-plattformen, defineres ved å oppgi det via utvidelsespunktet org.eclipse.core.runtime.products. Dette gjøres ved at plugin-modulen deklarerer navnet og IDen på produktet, samt IDen på applikasjonsutvidelsen som skal kjøres når produktet startes. Denne teknikken brukes av selve Eclipse-plattformen når Eclipse-produktet defineres. Her er utvidelsesdefinisjonen i org.eclipse.platform:
<extension id="ide" point="org.eclipse.core.runtime.products"> <product name="%productName" application="org.eclipse.ui.ide.workbench" description="%productBlurb"> <property name="windowImages" value="eclipse.png,eclipse32.png"/> <property name="aboutImage" value="eclipse_lg.png"/> <property name="aboutText" value="%productBlurb"/> <property name="appName" value="Eclipse"/> <property name="preferenceCustomization" value="plugin_customization.ini"/> </product> </extension>Det defineres en produktutvidelse når applikasjons-IDen er "org.eclipse.ui.ide.workbench". Denne applikasjons-IDen defineres av plugin-modulen org.eclipse.ui.ide i bidraget via utvidelsespunktet org.eclipse.core.runtime.applications.
<extension id="workbench" point="org.eclipse.core.runtime.applications"> <application> <run class="org.eclipse.ui.internal.ide.IDEApplication"> </run> </application> </extension>
Denne utvidelsen defineres med samme ID som det refereres til i applikasjonsegenskapen i produktutvidelsen. (Det fullt kvalifiserte navnet, med plugin-prefiks, brukes når det refereres til applikasjons-IDen fra den andre plugin-modulen.) Ved hjelp av denne mekanismen kan en separat plugin-modul definere alle produktspesifikke merkevarer og deretter referere til en eksisterende plugin-moduls applikasjon som applikasjonen som kjøres når produktet er startet.
I tillegg til applikasjonen beskriver utvidelsen org.eclipse.core.runtime.products produkttilpassingsegenskaper som brukes til å konfigurere produktets merkevareinformasjon. Denne informasjonen beskrives som navgitte egenskaper. La oss nok en gang se på den delen av kodetypen for plattformens plugin-modul.
<property name="windowImages" value="eclipse.png,eclipse32.png"/> <property name="aboutImage" value="eclipse_lg.png"/> <property name="aboutText" value="%productBlurb"/> <property name="appName" value="Eclipse"/> <property name="preferenceCustomization" value="plugin_customization.ini"/>Mulige egenskapsnavn som brukes av plattformen for produkttilpasninger, defineres i IProductConstants. Du finner en fullstendig beskrivelse av disse egenskapene og verdiene, i Javadoc. Vi skal se nærmere på dette i Tilpasse et produkt.