Плагин Eclipse, разработанный под Helios, не отображается в Juno - PullRequest
3 голосов
/ 26 марта 2012

Я разработал плагин для Eclipse, который отлично работал в Helios. Я установил Juno, поместил банку плагина в папку dropins и запустил Eclipse, но плагин in не работает в Juno (мой дополнительный пункт меню не отображается).

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

Итак, я открыл проект разработки плагинов с помощью Juno и попытался запустить его через «Запустить приложение Eclipse» в разделе «Тестирование». Тот же результат (без пункта меню). Я даже удалил мин версию (используя кнопку «Свойства ...»). Все еще нет радости. Когда я делаю вышеупомянутое с Гелиосом, это работает (пункт меню показывает).

В моих «Обязательных плагинах» у меня есть org.eclipse.ui, org.eclipse.core.runtime, org.eclipse.jdt.core, org.eclipse.core.resources, org.eclipse.ui. console, org.eclipse.jface.text, все без минимальной или максимальной версий . И те же записи отображаются, когда я нажимаю «Показать иерархию зависимостей плагина». Кажется, все в порядке, но мое приложение не запускается.

Plug-in Registry > (right click on my plugin) > Show Advanced

Plug-in Registry > (right click on my plugin) > Diagnose

приводит к Проблем не обнаружено.

Plug-in Registry > (right click on my plugin) > Start

приводит к зеленому треугольнику, но пункт меню по-прежнему отсутствует.

Я даже настроил сайт обновления функций; полностью под Helios я создал локальный сайт обновления функций, удалил файл jar из каталога выпадающих модулей Helios и установил приложение с сайта. Работал отлично. Но когда я установил из Juno таким же образом, он показал в реестре плагинов, но опять же, нет пункта меню. Кажется, он обнаружен, но, по-видимому, не работает (на что указывает отсутствие пункта меню в ожидаемом месте).

Под Extensions > org.ecliipse.ui.menus > menuContribution Я вижу там свой пункт меню с locationURI=popup:org.eclipse.jdt.ui.PackageExplorer. Возможно, что-то изменилось между Гелиосом и Юноной?

Обновление: В пустом рабочем пространстве установка работала. Я установил отдельную копию Juno и указал ее на пустое рабочее пространство, затем установил ее с локального сайта обновления функций. В результате приложение вело себя как обычно. Хотя это может дать подсказку, это не «решение», потому что у меня слишком много проектов, которые требуют много усилий, и не стоило бы идти по этому пути.

Обновление 2: 1) Сделал новую установку Juno, открыл пустое рабочее пространство, закрыл Juno, затем перечислил содержимое eclipse\configuration\org.eclipse.equinox.simpleconfigurator\bundles.info и перечислил содержимое файловой системы в eclipse\plugins. Единственной разницей между ними были записи, заканчивающиеся на .source, что ожидается. 2) Запустил Juno, указывая на копию моего рабочего пространства Helios. Help > Install new software... > Add... > Local... > (select local feature update site) > (uncheck Group items by category) и остальные, чтобы успешно завершить установку. 3) Закрыл Juno и отметил, что только мой плагин был добавлен в bundles.info, и отметил, что только мой плагин был добавлен в файловую систему в eclipse\plugins. Другими словами, у каждого из них был один дополнительный элемент, который был моим плагином. 4) Запустил Juno, но пункт меню из моего плагина не показывался, но все признаки (диагностика плагина) указывали на то, что он должен работать. 5) Скопировал банку плагина в папку dropins, но без улучшения.

Любое больше руководство о том, что делать дальше, будет оценено.

1 Ответ

2 голосов
/ 27 марта 2012

Сначала вы должны проверить, найден ли плагин.Затем вы должны проверить, разрешен ли плагин, т.е. выполнены ли все требования.

Если у вас есть версия Eclipse для разработки плагинов, вы можете открыть представление реестра плагинов.Посмотрите, есть ли ваш плагин в списке, если так, то, по крайней мере, он был найден.Затем щелкните правой кнопкой мыши по нему, включите расширенные операции, и после этого выберите диагностику.Некоторые требования, вероятно, не были выполнены.Если у вас нет версии Eclipse для плагинов, вы можете использовать консоль osgi.Перейдите в представление консоли и выберите консоль OSGI в меню просмотра.Запустите команду ss, чтобы получить список всех плагинов, и diag 123, где число - это идентификатор вашего плагина для его диагностики.

Кроме того, см. Предыдущий ответ на аналогичный вопрос

У меня возникли серьезные проблемы при установке плагинов в каталог dropins для работыиногда ... Вы можете попробовать скопировать его в каталог eclipse/plugins напрямую.Или делай так, как будто должен быть обработан;Создайте для него функцию и сайт обновлений и установите плагин с сайта обновлений.

Редактировать: «В установке с пустым рабочим пространством все заработало»

О,право.У вас проблемы с файлом bundles.info.См. эту страницу :

Файл bundles.info содержит список всех плагинов, установленных в текущей системе.При запуске все плагины, перечисленные в этом файле, передаются OSGi как точный набор плагинов для работы. Любые дополнительные плагины в каталоге плагинов или в другом месте игнорируются.

Теперь проверьте файл на рабочем месте в .metadata\.plugins\org.eclipse.pde.core\org.eclipse.equinox.simpleconfigurator.Сравните файлы из двух рабочих пространств, разница должна быть в вашем файле.Отредактируйте файл в вашем первом рабочем пространстве, чтобы он содержал строку, в которой указан ваш плагин из bundles.info из вашего второго рабочего пространства.

Файл bundles.info может быть обновлен, но ручное редактирование проще.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...