Многопользовательская установка Eclipse

В Eclipse предусмотрено несколько стратегий многопользовательской установки. Каждая стратегия удовлетворяет определенному сценарию. Все стратегии описаны в этом документе. Документ предназначен для разработчиков, настраивающих продукты на основе Eclipse для распространения; системных администраторов, настраивающих продукты на основе Eclipse для работы по сети; а также для разработчиков, заинтересованных в создании модулей, которые являются лояльными в этих настройках.

Дата последнего исправления: 17 июня 2005 г.

Основные понятия

Расположения

Как сказано в статье Рабочие опции Eclipse, существуют различные расположения, которые важны в контексте развертывания Eclipse в многопользовательской настройке:

Инициализация конфигурации

Перед первым запуском Eclipse область конфигурации изначально представляет собой пустой каталог. Eclipse и другие модули по мере работы наполняют это расположение. Большая часть мета-информации времени выполнения Eclipse (например, зависимости модулей, реестр расширений) записывается при завершении работы первого сеанса. Если набор установленных модулей не изменился, то во время последующих сеансов данные не записываются. Мы говорим, что конфигурация инициализируется. В процессе инициализации можно даже запретить для записи область конфигурации. Это может потребоваться в сценариях с общими конфигурациями (далее об этом будет сказано более подробно).

Параметр командной строки -initialize позволяет инициализировать область конфигурации без необходимости запускать приложение Eclipse. Процедура инициализации вызывает создание мета-информации, которая записывается в расположение конфигурации во время первого сеанса Eclipse. Однако, в области конфигурации есть другие файлы, которые создаются только при необходимости. Например:

В этих случаях (а также в случаях использования модулей других фирм), процедуры инициализации недостаточно для полной инициализации области конфигурации. По-прежнему необходимо записывать данные в область конфигурации, хотя эта необходимость постепенно исчезает, так как посещаются все пути выполнения в приложении, которое создает файлы в области конфигурации. Только после этого можно сказать, что область конфигурации инициализирована полностью, и для запуска Eclipse больше никогда не потребуется делать ее доступной для записи.

Сценарий №1 - частная установка

На самом деле, это сценарий для одного пользователя. Установка Eclipse применяется одним пользователем, который обладает полными правами доступа. Расположение области конфигурации по умолчанию определяется в каталог конфигурации в расположении установки.

Процедура настройки этого сценария состоит в том, чтобы просто убедиться, что пользователь обладает полными правами доступа к расположению установки.

Сценарий №2 - общая установка

По этому сценарию одна область установки является общей для многих пользователей. Каталог "configuration" в области установки является домашним только для файла config.ini в том виде, в каком он поставляется с продуктом (не инициализированный). У каждого пользователя есть свое локальное расположение конфигурации.

Для настройки этого сценария необходимо сделать область установки недоступной для записи обычным пользователям. В результате, когда пользователи будут запускать Eclipse, область конфигурации будет по умолчанию применяться в домашнем каталоге пользователя. Если этого не сделать, то все пользователи будут завершать работу в одном и том же расположении области конфигурации, что недопустимо.

Сценарий №3 - общая конфигурация

Здесь общей для пользователей является не только область установки, но и главная область конфигурации . При этом у пользователей по умолчанию остаются собственные доступные для записи области конфигурации. Частная область конфигурации пользователя выводится каскадом в главную конфигурацию и не содержит каких-либо важных данных, если главная конфигурация был полностью инициализирована и не изменился набор установленных модулей.

В этом сценарии системный администратор должен инициализировать главную конфигурацию (как правило, в расположении установки), а также убедиться, что области установки и конфигурации доступны пользователям только для чтения. Когда пользователи запускают продукт на основе Eclipse из общего расположения установки, то автоматически вычисляется и инициализируется локальная область конфигурации, поскольку у них нет прав доступа к области конфигурации в области установки.

Чем полнее инициализирована общая конфигурация, тем меньше необходимость в создании файлов в локальной конфигурации.

Настройка расположения частной области конфигурации

По умолчанию задано следующее расположение частной области конфигурации:

<пользовательский-домашний-каталог>/.eclipse/<ид-продукта>_<версия-продукта>/configuration

Пользовательский домашний каталог определяется системным свойством системы Java user.home. ИД продукта и версия извлекаются из заменителя файла продукта .eclipseproduct в установке Eclipse.

Область конфигурации, отличную от заданной по умолчанию, можно установить с помощью системного свойства osgi.configuration.area. Это свойство может задавать конечный пользователь, но удобнее задавать его либо в файле launcher .ini, либо в файле config.ini, который находится в расположении основной конфигурации.

Обновление

Общая конфигурация

Модули можно устанавливать в общую конфигурацию и удалять из нее. Пользователи могут увидеть внесенные изменения при следующем запуске Eclipse. Необходимо убедиться, что пользователи, применяющие общую конфигурацию в качестве основной, в данный момент не работают с Eclipse.

Частная конфигурация

Пользователи могут изменять свои локальные области конфигурации путем установки дополнительных модулей. Это не изменяет общую конфигурацию, таким образом изменения в локальной конфигурации не видны другим пользователям. Обратите внимание, что модули, настроенные для общей конфигурации, нельзя удалить. Если вы их удалите, то они будут установлены заново при следующем запуске платформы.