У меня есть проект Maven, который упакован как jar
.
И у меня также есть проект Maven, который упакован как war
.Этот военный проект имеет файл tld и несколько файлов xhtml (тег libs).Структура военного проекта (в основном):
pom.xml
src
main
java
...
webapp
WEB-INF
my-facelets.taglib.xml
facelets
aTag.xhtml
anotherTag.xhtml
META-INF
my-facelets.taglib.tld
И затем появилось требование удалить эти файлы xml, xhtml и tld из военного проекта и упаковать их в проект jar.Поэтому моей первой попыткой было добавить в POM проекта jar:
<resources>
<resource>
<directory>src/main/tld</directory>
<targetPath>META-INF</targetPath>
</resource>
<resource>
<directory>src/main/taglib</directory>
<targetPath>WEB-INF</targetPath>
</resource>
</resources>
и, конечно, поместить файлы в src/main/tld
(те, которые я хотел экспортировать в META-INF
) и src/main/taglib
(те, которые я хотел экспортировать в WEB-INF
).И баночка была создана так, как я хочу:
myjar
com
my
classes
WEB-INF
META-INF
my-facelets.taglib.tld
WEB-INF
...
А потом я добавил эту новую банку в свой первый военный проект, как зависимость maven.
Проблема в том, что этиФайлы .xhtml, .xml, которые находятся внутри META-INF банки, WEB-INF (банка находится внутри войны WEB-INF/lib
), не распознаются.По-видимому, они должны находиться непосредственно в структуре войны, если не выполняется какая-либо другая конфигурация.Это обязательное требование, потому что несколько военных проектов будут использовать функции (классы и метки) проекта jar.