У меня есть проект, который производит OSGI-пакет, используя maven-bundle-plugin. Конфигурация выглядит так:
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.1.0</version>
<extensions>true</extensions>
<inherited>true</inherited>
<configuration>
<instructions>
<Export-Package>${bubble.osgi.exports}</Export-Package>
<Import-Package>${bubble.osgi.imports}</Import-Package>
<Embed-Dependency>${bubble.osgi.embed.dependencies}</Embed-Dependency>
<_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
</instructions>
<versions>
<bubble.osgi.version.clean>${project.version}</bubble.osgi.version.clean>
</versions>
</configuration>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>cleanVersions</goal>
</goals>
</execution>
</executions>
</plugin>
Результатом проекта является один файл jar, содержащий все файлы osgi, встроенные зависимости и т. Д. Я бы предпочел иметь в качестве результата 2 банок, один с включенным OSGI, а другой без, так как встроенные зависимости вызывают проблемы при использовании его просто как простой JAR.
Есть ли другой способ, кроме использования подключаемого модуля maven для этого?