У меня возникли проблемы с расслоением проекта OSGi следующим образом:OSGi расслоения Импорт пакетов и Встраивание зависимостями
У меня есть классы, которые требуют использования JDOM. В настоящее время я работаю над проектом, когда я развертываю JDOM в виде отдельного пакета. Это расслоение экспортирует следующие пакеты:
org.jdom,version=1.0.0
org.jdom.adapters,version=1.0.0
org.jdom.filter,version=1.0.0
org.jdom.input,version=1.0.0
org.jdom.output,version=1.0.0
org.jdom.transform,version=1.0.0
org.jdom.xpath,version=1.0.0
Теперь я хочу, чтобы изменить проект таким образом, что я включаю JDOM как Встроить-зависимость. Для этого я добавить зависимость к моему п файлам и установить следующее в конфигурации Maven-расслоение-плагин:
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<instructions>
<Bundle-SymbolicName>com.qnx.aem.cloudsite-bundle</Bundle-SymbolicName>
<Embed-Transitive>true</Embed-Transitive>
<Embed-Dependency>jdom</Embed-Dependency>
</instructions>
</configuration>
</plugin>
После этого, когда я смотрю на наших проектах Bundle Manifest я вижу кучу новых импортных пакетов, требующей зависимости от JDOM-банки: jaxen, xerces и т. д.
Как на самом деле ранее развернутый пакет OSGi JDOM разрешил эти же зависимости? Они никогда не были перечислены в пакетах Packles Import Packages? Более того, если я попытаюсь включить их в качестве зависимостей проекта и внедрить их, это просто сочтет проблему. Помогите!
Я предполагаю, что эти пакеты были импортированы в оригинальную jdom-банку с директивой «resolution: = optional» или они вообще не были импортированы. Не могли бы вы предоставить ссылку на jdom jar, который вы использовали? –
Конечно, я использовал этот JAR: http://mvnrepository.com/artifact/jdom/jdom/1.0 –
Я использовал эту версию пакета JDOM: http://ebr.springsource.com/repository/app/bundle/version/detail ? имя = com.springsource.org.jdom & версия = 1.0.0 –