我有一个样本结构的项目:
jcr_root
|_apps
|_A
|_B
|_etc
|_A
|_B
我需要做的是在创建包时,我需要包含" apps / A&等/ A"或者" apps / B&等/ B"
在我的pom.xml中,我试过了类似的东西:
<resources>
<resource>
<directory>src/main/content/jcr_root</directory>
<excludes>
<exclude>apps/A/**</exclude>
<exclude>etc/A/**</exclude>
</excludes>
</resource>
</resources>
但仍然是&#39; A&#39;和&#39; B&#39;在应用程序等下包含在包装中。我使用content-package-maven-plugin
构建了一个将部署在CQ上的软件包。
我尝试将条目放在filter.xml中,但是在部署时使用它,而不是在打包时使用。
看来,包含/排除标签根本不起作用。为了测试,我尝试了:
<resources>
<resource>
<directory>src/main/content/jcr_root</directory>
<excludes>
<exclude>**/*.otf</exclude>
</excludes>
</resource>
</resources>
但是fonts.otf文件仍然包含在打包的zip中。
请提供一些帮助或提示。如果需要更多信息,请告诉我。
非常感谢提前。
答案 0 :(得分:1)
所以最后我能够使用排除的资源创建一个包。
问题不在于include / exclude标签(它们总能正常工作。)
排除某些资源后的文件被复制到“target / classes”目录 问题是maven-content-package插件将资源从原始源目录而不是创建的“target / classes”目录中打包。因此它总是包含所有内容。这是maven-content-package插件的默认行为。
因此,我必须明确告诉插件您需要从“目标/类”中选择要打包的资源。
<builtContentDirectory>${basedir}/target/classes</builtContentDirectory>
如果有人需要更多细节,请告诉我。感谢您的所有答案:)
答案 1 :(得分:0)
因为你想要包含jcr_root / app / A和jcr_root / etc / A. 请您尝试在POM.xml中使用它:
<project>
...
<resources>
<resource>
<directory>jcr_root</directory>
<includes>
<include>**/*A*</include>
</includes>
<excludes>
<exclude>**/*B*</exclude>
</excludes>
</resource>
<resources>
</project>
同样地,你可以用它来获取jcr_root / app / B和jcr_root / etc / B.
此致
Jyotsna