Я пытаюсь создать плагин Eclipse, который зависит от библиотеки, которая должна распространяться отдельно от него.Причины этого:
- Это коммерческая библиотека, а плагин будет распространяться бесплатно.Кроме того, большинству людей это не нужно, и мы не хотим вводить пользователей в заблуждение.
- В настоящее время используется как минимум две версии библиотеки, и мы не хотим создавать две разные версии библиотеки.плагин.Интерфейс совместим, поэтому мы можем поставлять только одну версию плагина.
Плагин предназначен для среды разработки на основе Eclipse, и его целью является обеспечение функциональности нашей библиотеки в этой среде.Сама библиотека зависит от других бесплатных компонентов, которые я могу связать с ней без проблем.
Так как я не знаю, могу ли я точно сказать, какая это библиотека, но я должен держать это однозначнодавайте назовем библиотеку «L», а плагин, который я пытаюсь разработать, - «P».
Для этого я использую инструмент bnd, и до сих пор я пробовал обе упаковки L как отдельный плагин.и как фрагмент плагина.
Как автономный плагин, он был принят средой хост-затмения, и я мог бы перечислить его как зависимость от P и успешно построить его.Однако во время выполнения плагин P не видел ресурсов из библиотеки L на своем пути к классам.В основном нужны те, что находятся в META-INF / services.
Затем я попытался упаковать L в качестве фрагмента плагина для P. Я надеялся, что это сработает, поскольку в спецификации сказано, что путь к классу фрагмента объединен с его хостом.плагина.Это не сработало, потому что я не мог использовать классы из L в качестве зависимостей сборки P - размещение L в каталоге плагинов eclipse не привело к тому, что он был распознан как установленный плагин.
Итак, я 'Я застрял.Мне нужны банки L как часть времени выполнения P и сборки classpath, и в то же время они должны быть в отдельном плагине.Возможно ли то, что я пытаюсь сделать?