почему подключаемый модуль Eclipse, предназначенный для Eclipse версии 3.5, работает с Juno, но не с Indigo или Kepler?

Я разработал подключаемый модуль Eclipse с использованием Juno (версия 4.2) и указал в файле plugin.xml, что он предназначен для Eclipse версии 3.5.

Однако, когда я копирую файл jar в папку «dropins» Eclipse Indigo (предыдущая версия) или Eclipse Kepler (текущая версия), он отображается как установленный плагин, но не загружается при запуске.

Может ли быть так, что в конкретных экземплярах Kepler/Indigo, на которых я пробовал плагин, отсутствует хотя бы одна из зависимостей плагина?


person J Smith    schedule 23.07.2013    source источник
comment
Перестройте проект подключаемого модуля в Eclipse 3.5. Ваш плагин должен работать на 3.5 и 3.6. Возможно, вам придется иметь два исходных проекта, один для 3.5 и один для 4.2.   -  person Gilbert Le Blanc    schedule 23.07.2013
comment
Пожалуйста, уточните, что именно вы сделали в plugin.xml, чтобы указать, что вы хотите ориентироваться на Eclipse 3.5.   -  person Konstantin Komissarchik    schedule 23.07.2013
comment
это: ‹?xml версия=1.0 кодировка=UTF-8?›‹?eclipse версия=3.5?›‹плагин›...‹/плагин›   -  person J Smith    schedule 23.07.2013


Ответы (1)


Тег <?eclipse version="3.5"?> в файле plugin.xml не указывает, на какую версию Eclipse вы хотите ориентироваться. Он просто указывает версию синтаксиса plugin.xml, которую вы хотите использовать. Более новые версии Eclipse будут поддерживать старый синтаксис, но не наоборот.

То, что действительно контролирует версию Eclipse, поддерживаемую вашим подключаемым модулем, — это зависимости, указанные в файлах MANIFEST.MF подключаемого модуля, и зависимости функций в файлах feature.xml. Распространенной проблемой является невозможность соблюдения ограничения версии, указанного в одной из этих зависимостей.

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

person Konstantin Komissarchik    schedule 23.07.2013
comment
Я посмотрел на зависимости и для всех элементов с (3.8.x) в имени я изменил минимальную версию на 3.7, и теперь плагин отлично работает с Indigo. Спасибо за вашу помощь. - person J Smith; 24.07.2013