Knihovny a načítání tříd jiných dodavatelů
Protože OSGi využívá služeb více zaváděčů tříd, transparentní používání rozšiřitelných nebo konfigurovatelných knihoven třetích stran na platformě Eclipse si vynucuje používat mechanizmus platformy Eclipse nazývaný "načítání buddy".
V rámci tohoto mechanizmu může balík indikovat, že potřebuje pomoc při načítání tříd nebo prostředků v případě, že je nemůže najít mezi svými nezbytnými předpoklady.
Vezměte na vědomí, že "rozšiřitelnými knihovnami" zde nazýváme knihovny, které musí vidět třídy nebo prostředky poskytované uživatelským kódem (například mechanizmus registrátora log4j, hibernace,...).
Pokud chcete indikovat potřebu načítání buddy, musíte upravit manifest balíku a přidat následující záhlaví:
Eclipse-BuddyPolicy: <hodnota>
<hodnota> se odkazuje na zásadu používanou pro hledání tříd. Zde jsou podporované zásady:
- registered - označuje, že mechanizmus buddy se bude informovat u balíků, které u něj byly registrovány.
Balík, jenž je ochotný zaregistrovat se u jiného balíku, přidává do svého manifestu: "Eclipse-RegisterBuddy: <symbolickýNázevBalíku>";
- dependent - označuje, že třídy a prostředky se budou vyhledávat tranzitivním způsobem ve všech závislých entitách balíku;
- global - označuje, že třídy a prostředky se budou vyhledávat v globální sdružené oblasti exportovaného balíčku;
- app - označuje, že bude dotazován zaváděč tříd aplikace;
- ext - označuje, že bude dotazován zaváděč tříd rozšíření;
- boot - označuje, že bude dotazován zaváděč tříd spouštění.