Я пытаюсь развернуть пакет в apache-karaf 3.0.3, который содержит определенное количество сторонних файлов jar, которые я внедряю внутри, , поскольку файлы сторонних баннеров не являются OSGi расслоения. Из одного файла jar содержится оператор импорта в java-файле, который больше не существует в последней версии jar-файла (у меня не было olderversion файла jar).Ошибка при развертывании сторонних файлов jar в karaf
например: баночка файл 1 - Class1 - импорт com.java.test.io
При развертывании мое приложение сверток с файлами фляги я столкнулся ошибку.
Ошибка при выполнении команды: Ошибка при выполнении команды на пучках: Невозможно выполнить команду на пачке 391: Расслоение «com.test.example.bundle_0.1.0.SNAPSHOT [391]» не может быть решена. Причина: Отсутствует ограничение: Import-Package: com.java.test.io; version = "0.0.0"
Я пытаюсь воспроизвести сценарий с помощью простого java-приложения, он работает так, как ожидалось. Мое предположение заключается в том, что karaf сканирует все операторы импорта и проверяет, существует ли соответствующий экспортный пакет (разрешение на уровне пакета) существует для соответствующего импорта. Может кто-нибудь объяснить, почему приложение java работает, и в карафе это не удается?
pom.xml
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<instructions>
<Bundle-SymbolicName>mybundlename</Bundle-SymbolicName>
<Embed-Dependency>jar1,jar2,jar3,jar4</Embed-Dependency>
</instructions>
</configuration>
</plugin>
</plugins>
Как вы строите свой комплект со встроенными файлами jar? – Ralf