Проблема с добавлением jar в комплект OSGI с помощью <Embed-Dependency> - PullRequest
1 голос
/ 08 июня 2011

Я пытаюсь встроить сторонние библиотеки и файлы приложения в комплект OSGI. Я прочитал документ к плагину felix maven и попытался использовать Embed-Dependency . Но, похоже, это не имеет никакого эффекта. Вот мой пом


<dependencies>
        &ltdependency>
            &ltgroupId>com.test</groupId>
            <artifactId>taxonomymessagebundle</artifactId>
            <version>1.0</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>commons-lang</groupId>
            <artifactId>commons-lang</artifactId>
            <version>2.4</version>
            <scope>compile</scope>
        </dependency>
    </dependencies>
<build>
        <plugins>
            <plugin>
                <groupId>org.apache.felix</groupId>
                <artifactId>maven-bundle-plugin</artifactId>
                <version>2.0.1</version>
                <extensions>true</extensions>
                <configuration>
                    <instructions>
                        <Export-Package>com.test.taxonomy.dao.*;version=1.0.0</Export-Package>
                        <Import-Package>*</Import-Package>
                    </instructions>
                    <Embed-Dependency>*;scope=compile|runtime</Embed-Dependency>
                    <Embed-Transitive>true</Embed-Transitive>
                </configuration>
            </plugin>
        </plugins>
    </build>

Я mvn clean install для сборки пакета. После установки я заглянул в файл манифеста, он не показывает никакой информации о Bundle-Classpath или Embed. Похоже, он полностью проигнорировал инструкцию. Кроме того, две зависимые банки также не были встроены в комплект.

Вот сгенерированный манифест:

code>
Manifest-Version: 1.0
Export-Package: com.test.taxonomy.dao;uses:="com.autodesk.taxonomy";version="1.0.0"
Bundle-Version: 1.0.0
Build-Jdk: 1.6.0_21
Built-By: bandops
Tool: Bnd-0.0.357
Bnd-LastModified: 1307492329392
Bundle-Name: Taxonomy Dao Bundle
Bundle-ManifestVersion: 2
Created-By: Apache Maven Bundle Plugin
Import-Package: com.test.taxonomy.dao;version="1.0",com.autodesk.test.message
Bundle-SymbolicName: com.test.taxonomy.daobundle

Будут оценены любые указатели.

-Спасибо

1 Ответ

7 голосов
/ 08 июня 2011

<Embed-Dependency> и <Embed-Transitive> должны находиться внутри тега <instructions>.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...