У меня есть проблема, когда я строю войну с использованием Maven войны плагин и перекрывающий его, используя BND плагин, как описано в Adding OSGi metadata to existing projects without changing the packaging type. Этот проект определяет следующую зависимость:Как определить диапазон версий для пакета импорта?
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.12</version>
</dependency>
При запуске сборки, он генерирует следующее запись в MANIFEST.MF
Import-Package: .., javax.ws.rs.core, ..
Как только я изменить версию 1.13 или выше входа Импорт-пакет становится:
Import-Package: .., javax.ws.rs;version="[1.1,2)", ..
Это становится настоящей проблемой для меня, потому что у меня есть javax.ws.rs.javax.ws.rs-api_2.0.0.m16. Который разрешит импорт для случая без версии, но перестает делать это, когда существует ограничение диапазона.
Итак, мой общий вопрос: как bnd определяет этот диапазон версий? Что-то изменилось между двумя второстепенными выпусками, чтобы заставить его перейти от ограничения версии к определенному диапазону, поэтому я думаю, что понимание того, как bnd делает это решение, поможет мне обнаружить, что это за проблема.