Проблем със създаването на персонализирана библиотека с етикети с помощта на OSGI пакет

Опитвам се да създам персонализирани библиотеки с етикети, като използвам OSGI пакети в cq. Всъщност създадох всички необходими файлове, но не можах да поставя моя файл mytags.tld в папка META-INF по време на компилация. За това използвах плъгин maven-bundle-plugin. Ето моят код за включване на ресурса в папката META-INF

<plugin>
    <groupId>org.apache.felix</groupId>
    <artifactId>maven-bundle-plugin</artifactId>
    <extensions>true</extensions>
    <configuration>
        <instructions>
            <Include-Resource>META-INF/myTags.tld=target/classes/META-INF/myTags.tld</Include-Resource>
        </instructions>
        <Export-Package>com.mine.*</Export-Package>
        <Import-Package>*;resolution:=optional</Import-Package> 
        <Embed-Dependency>*;scope=compile|runtime</Embed-Dependency>                   
    </configuration>
</plugin>

Забележка: Поставих моя файл с маркери в "src\main\resources\META-INF\myTags"

Използвах <Include-Resource>, за да включа моя tld файл. Но можех да видя своя tld файл в папката META-INF след създаването на jar файла.

Ето моята грешка при изграждането

[ГРЕШКА] Пакет com.mine-bundle:bundle:1.0-SNAPSHOT: Входният файл не съществува: target/classes/META-INF/myTags.tld

Може ли някой да каже какъв може да е проблемът?


person Anderson    schedule 20.09.2013    source източник


Отговори (2)


Мисля, че параметърът <Include-Resource> е излишен. Ако не го посочите, maven-bundle-plugin ще включва всички ресурси от src/main/resources до изходния JAR, като официален документ казва:

По подразбиране приставката за пакет преобразува директориите с ресурси на Maven на проекта в една инструкция. Ако посочите своя собствена инструкция, това ще замени генерираната.

Така че, ако имате TLD файл, поставен в src/main/resources/META-INF, той трябва да бъде включен без допълнителни опции.

person Tomek Rękawek    schedule 20.09.2013

Имах този проблем в IntelliJ, ако нямаше папка src/main/resources. Добавянето на фиктивен файл със свойства към това местоположение го поправи.

person Hazel Troost    schedule 10.08.2017