Как включить обновление программного обеспечения в продукте Eclipse?
В моем проекте Eclipse я определил простой плагин (связку), функцию, которая включает в себя плагин, и продукт, который включает эту функцию.
Когда я экспортирую продукт (через "Мастер экспорта продукта Eclipse" редактора продукта), он создает продукт. Я могу запустить продукт, все работает нормально (плагин есть и делает то, что должен делать).
Единственная проблема заключается в том, что пользователь продукта не может установить дополнительные функции Eclipse с помощью меню "Обновление программ" ("Справка" -> "Обновления программ"). Подменю "Обновления программного обеспечения" ("Найти и установить..." и "Управление конфигурацией...") отображаются серым цветом.
Какие плагины и / или функции мы должны добавить к продукту, чтобы продукт мог принимать дополнительные функции с помощью меню обновлений программного обеспечения?
Я пытался добавить несколько плагинов org.eclipse.equinox.p2. *, Но он все еще не работает.
<plugin id="org.eclipse.equinox.p2.artifact.repository"/>
<plugin id="org.eclipse.equinox.p2.console"/>
<plugin id="org.eclipse.equinox.p2.core"/>
<plugin id="org.eclipse.equinox.p2.director"/>
<plugin id="org.eclipse.equinox.p2.director.app"/>
<plugin id="org.eclipse.equinox.p2.directorywatcher"/>
<plugin id="org.eclipse.equinox.p2.discovery"/>
<plugin id="org.eclipse.equinox.p2.discovery.compatibility"/>
<plugin id="org.eclipse.equinox.p2.engine"/>
<plugin id="org.eclipse.equinox.p2.extensionlocation"/>
<plugin id="org.eclipse.equinox.p2.garbagecollector"/>
<plugin id="org.eclipse.equinox.p2.jarprocessor"/>
<plugin id="org.eclipse.equinox.p2.metadata"/>
<plugin id="org.eclipse.equinox.p2.metadata.repository"/>
<plugin id="org.eclipse.equinox.p2.operations"/>
<plugin id="org.eclipse.equinox.p2.publisher"/>
<plugin id="org.eclipse.equinox.p2.publisher.eclipse"/>
<plugin id="org.eclipse.equinox.p2.ql"/>
<plugin id="org.eclipse.equinox.p2.reconciler.dropins"/>
<plugin id="org.eclipse.equinox.p2.repository"/>
<plugin id="org.eclipse.equinox.p2.repository.tools"/>
<plugin id="org.eclipse.equinox.p2.touchpoint.eclipse"/>
<plugin id="org.eclipse.equinox.p2.touchpoint.natives"/>
<plugin id="org.eclipse.equinox.p2.transport.ecf"/>
<plugin id="org.eclipse.equinox.p2.ui"/>
<plugin id="org.eclipse.equinox.p2.ui.discovery"/>
<plugin id="org.eclipse.equinox.p2.ui.importexport"/>
<plugin id="org.eclipse.equinox.p2.updatechecker"/>
<plugin id="org.eclipse.equinox.p2.updatesite"/>
Кто-нибудь точно знает, что нужно сделать (на уровне определения продукта, если это возможно), чтобы заставить работать меню обновлений программного обеспечения?
3 ответа
Пункт меню " Установка нового программного обеспечения " добавляется с помощью плагина org.eclipse.equinox.p2.ui.sdk
, Вы должны включить его, чтобы показать этот пункт меню в вашем RCP.
Если ваш RCP основан на функциях, я думаю, что вы должны включать только функции, связанные с p2, чтобы упростить процесс.
Я также столкнулся с той же проблемой и решил следующие шаги;
В файле конфигурации продукта
.product file --> In Configuration Tab
Specify custom start levels for the following plug-ins,
org.eclipse.equinox.ds start level 2, auto start true
org.eclipse.equinox.simpleconfigurator start level 1, auto start true
org.eclipse.equinox.common start level 2, auto start true
org.eclipse.core.runtime start level 4, auto start true
Я не знаю полного списка необходимых пакетов p2, но вы легко можете его сгенерировать: используйте новый мастер для создания проекта приложения e4 > e4. В результате создается файл продукта, содержащий все пакеты, необходимые для обновляемого продукта p2.
Если у вас есть продукт на основе функций, функции org.eclipse.rcp
а также org.eclipse.e4.rcp
также должен дать вам обновляемый продукт