1

Я разрабатываю плагины в контексте Equinox. Я установил целевую платформу, которая содержит плагины Equinox, на которые мой плагин будет зависеть.Смешанная целевая платформа приводит к ошибкам разрешения

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

Как только я смешиваю эти платформы (оба 3.8), все мои плагины показывают ошибки, и почти все не может быть разрешено, например. «org.eclipse. *», хотя они определенно присутствуют на целевой платформе.

Когда я удаляю дополнительные компоненты, все старые компоненты могут быть снова разрешены. Есть идеи?

+0

Проверьте вкладку «Содержимое» целевого определения - действительно ли у смешанного целевого определения есть то, что вы ожидаете от него? – oberlies

+0

Несколько раз. Да, это именно то, что я ожидаю – clericc

ответ

3

Похоже, вы пытаетесь включить несколько версий определенных пакетов в целевую платформу, используя так называемый «режим планировщика» для местоположения сайта программного обеспечения. (В target editor UI режим планировщика соответствует выбору опции «Включить необходимое программное обеспечение».)

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

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

Смежные вопросы