Tycho не может разрешить Require-Bundle: org.sample.ide.common;bundle-version=1.0.0.qualifier

Я создаю проект подключаемого модуля Eclipse с помощью Tycho.

Я получил это сообщение об ошибке.

[ERROR] Cannot resolve project dependencies:
[ERROR]   Software being installed: org.sample.ide.core 1.0.0.qualifier
[ERROR]   Missing requirement: org.sample.ide.core 1.0.0.qualifier requires 'bundle org.sample.ide.common 1.0.0' but it could not be found

org.sample.ide.core-1.0.0.qualifier имеет org.sample.ide.common-1.0.0.qualifier в качестве требуемого пакета.

Когда я экспортирую проект подключаемого модуля с помощью функции экспорта Eclipse PDE, зависимые проекты распознаются в одной и той же рабочей области.

И мой manifest.mf имеет версию 1.0.0.qualifier, а мой pom.xml имеет версию 1.0.0-SNAPSHOT. Это проблема?


person user1817512    schedule 12.11.2012    source источник


Ответы (2)


Поддерживается наличие артефактов с версиями .qualifier, так что это не причина вашей проблемы.

Однако я не уверен, в какой степени Tycho также поддерживает замену .qualifier в зависимостях, например. Require-Bundle заголовки. (По крайней мере, это багги.) ваш проект с зависимостью от версии 1.0.0 вместо 1.0.0.qualifier.

person oberlies    schedule 12.11.2012

Tycho заменяет .qualifier отметкой времени или фиксированной строкой в ​​сборке реактора во всех файлах манифеста. Он разрешает файлы из репозиториев, определенных из прикрепленных целевых файлов, и из локального репозитория. Если ни один из них не содержит полностью совпадающую зависимость, сборка Tycho не удастся. Обратите внимание, что разрешение экспорта PDE основано на текущей цели, установленной в Eclipse, и что PDE заменит квалификатор для всех пакетов, открытых в рабочей области. Tycho ничего об этом не знает, его областью действия является то, что включается в reactor во время сборки.

person Jörn Guy Süß    schedule 13.11.2012