Víceuživatelské instalace Eclipse

Platforma Eclipse nabízí řadu strategií podpory víceuživatelských instalací. Každá ze strategií najde uplatnění v konkrétním scénáři použití. Tento dokument pojednává o těchto strategiích a popisuje, kdy by se která strategie měla používat. Tento dokument je určen především pro návrháře produktů zajišťující konfiguraci produktů založených na platformě Eclipse před jejich distribucí, administrátory systému nastavující produkty založené na platformě Eclipse pro síťové použití a vývojáře, kteří mají zájem o vytváření modulů plug-in, které budou vykazovat dobrou součinnost s ostatními aplikacemi.

Poslední změna: 17.června 2005

Základní koncepty

Umístění

Jak je popsáno v článku Běhové volby Eclipse, v kontextu zavádění Eclipse ve víceuživatelském prostředí existují tři různá umístění, která považujeme za důležitá:

Inicializace konfigurace

Před prvním spuštěním Eclipse je konfigurační oblast pouze prázdným adresářem. Toto umístění se v rámci jednotlivých relací Eclipse postupně naplňuje daty běhové komponenty Eclipse a dalšími moduly plug-in. Většina metadat uchovávaných běhovou komponentou Eclipse (např. závislosti modulů plug-in, registr rozšíření) se zapisuje v průběhu vypínání první relace. Pokud v množině instalovaných modulů plug-in neproběhne žádná změna, mezi následujícími relacemi není nutno zapisovat jakákoli data. Říkáme, že konfigurace je inicializována. Pokud je konfigurace v tomto stavu, je dokonce možné nastavit, aby konfigurační oblast byla pouze pro čtení. Nastavení konfigurační oblasti pouze pro čtení je užitečné ve scénářích se sdílenou konfigurací (další podrobnosti viz dále).

Volba příkazového řádku -initialize umožňuje inicializovat konfigurační oblast i bez spuštění aplikace Eclipse. Procedura inicializace si vynutí vytvoření veškerých metadat, která se zapisují do umístění konfigurace v průběhu první relace Eclipse. V konfigurační oblasti však existují i další soubory, které se vytváří pouze je-li jich potřeba. Například:

V těchto případech (a dalších situacích, které vzniknou díky modulům plug-in třetích stran) není inicializační procedura dostačující pro plnou inicializaci konfigurační oblasti. Stále bude potřeba do konfigurační oblasti zapisovat, ale tato potřeba se bude postupně zmenšovat s tím, jak se budou provádět jednotlivé úseky aplikací způsobující vytváření souborů v konfigurační oblasti. Poté bude možné říci, že je konfigurační oblast plně inicializována a již do ní nebude potřeba cokoli zapisovat k tomu, aby platforma Eclipse mohla běžet.

Scénář č. 1 - Soukromá instalace

Jedná se vlastně o scénář s jedním uživatelem. Instalace platformy Eclipse se používá jediným uživatelem a tento uživatel k ní má plná přístupová práva. Umístění konfigurační oblasti se standardně nastaví na adresář "configuration" pod umístěním instalace.

Postup nastavení tohoto scénáře spočívá pouze v kontrole, zda má uživatel všechna práva k umístění instalace.

Scénář č. 2 - Sdílená instalace

V tomto scénáři sdílí několik uživatelů jednu instalační oblast. V adresáři "configuration" pod instalační oblastí najdeme pouze soubor config.ini tak, jak byl dodán s produktem (není inicializován). Každý uživatel má k dispozici vlastní samostatné umístění konfigurace.

Postup nastavení v rámci tohoto scénáře vyžaduje, aby instalační oblast byla pro běžné uživatele nastavena jako pouze pro čtení. Když uživatel Eclipse spustí, konfigurační oblast se automaticky nastaví na adresář pod domovským adresářem daného uživatele. Pokud by se to neprovedlo, všichni uživatelé by měli konfigurační oblast na stejném místě, což není podporováno.

Scénář č. 3 - Sdílená konfigurace

V tomto případě uživatelé sdílí nejen instalační oblast, ale i hlavní konfigurační oblast. Při výchozím nastavení však uživatelé i nadále mají své vlastní konfigurační oblasti s možností zápisu. Soukromá konfigurační oblast uživatele je postupně přenesena do hlavní konfigurace. Pokud byla hlavní konfigurace plně inicializována a nedošlo k žádným změnám na množině modulů plug-in k instalaci, pak soukromá konfigurační oblast uživatele neobsahuje žádná zajímavá data.

Administrátor systému v tomto scénáři inicializuje hlavní konfiguraci (zpravidla pod umístěním instalace) a zkontroluje, zda je celá oblast instalace i konfigurace z pohledu uživatelů pouze pro čtení. Když uživatel spustí produkt Eclipse ze sdíleného umístění instalace, nemá práva pro zápis do konfigurační oblasti pod oblastí instalace, a proto se automaticky vypočte a inicializuje lokální konfigurační oblast.

S tím, jak se sdílená konfigurace postupně inicializuje, postupně klesá potřeba vytvářet soubory pod lokální konfigurací.

Nastavení umístění pro soukromou konfigurační oblast

Výchozí umístění pro soukromou konfigurační oblast je:

<domovský-adresář-uživatele>/.eclipse/<id-produktu>_<verze-produktu>/configuration

Domovský adresář uživatele je určen ze systémové vlastnosti user.home prostředí Java. Id produktu a verze produktu se získají ze souboru značkovačů produktu .eclipseproduct pod instalací Eclipse.

Jinou než výchozí konfigurační oblast lze definovat nastavením vlastnosti systému osgi.configuration.area. Tuto vlastnost může nastavit koncový uživatel, ale je pohodlnější to provést buďto v souboru launcher.ini nebo v souboru config.ini v základním umístění konfigurace.

Aktualizace

Sdílená konfigurace

Moduly plug-in lze instalovat do sdílené konfigurace nebo je odtud odebírat. Tyto změny se pro uživatele projeví při dalším spuštění Eclipse. Je nezbytné zajistit, aby Eclipse neměli spuštěni ti uživatelé, kteří používají sdílenou konfiguraci jako svoji hlavní konfiguraci.

Soukromá konfigurace

Uživatelé mohou upravovat své lokální konfigurační oblasti instalováním dalších modulů plug-in. To nezpůsobí žádné změny ve sdílené konfiguraci, takže změny se z pohledu ostatních uživatelů nijak neprojeví. Uvědomte si, že moduly plug-in nakonfigurované ve sdílené konfiguraci nelze odebírat. Pokud to provedete, znovu se nainstalují při dalším spuštění platformy.