gpt4 book ai didi

adobe - 排除过滤器不适用于 filevault-package-maven-plugin

转载 作者:行者123 更新时间:2023-12-04 02:37:20 27 4
gpt4 key购买 nike

我有一个包含节点的内容包,当这个包安装在 AEM 6.5 上时,我想排除它。排除配置在 filter.xml (META-INF/vault/filter.xml) 中定义。

下面是我的 filter.xml 的表示

<?xml version="1.0" encoding="UTF-8"?>
<workspaceFilter version="1.0">
<filter root="/apps/amzn-biz">
<exclude pattern="/apps/amzn-biz/i18n(.*)"/>
</filter>
<filter root="/apps/sling"/>
</workspaceFilter>

我的 pom.xml 有以下配置
<!-- ====================================================================== -->
<!-- V A U L T P A C K A G E P L U G I N S -->
<!-- ====================================================================== -->
<plugin>
<groupId>org.apache.jackrabbit</groupId>
<artifactId>filevault-package-maven-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<group>amzn-biz</group>
<acHandling>merge_preserve</acHandling>
<packageType>content</packageType>
<embeddeds>
<embedded>
<groupId>com.amazon.business</groupId>
<artifactId>amzn-biz-foundation.core</artifactId>
<target>/apps/amzn-biz/install</target>
</embedded>
</embeddeds>
<subPackages>
<subPackage>
<groupId>com.adobe.cq</groupId>
<artifactId>core.wcm.components.all</artifactId>
<filter>true</filter>
</subPackage>
<subPackage>
<groupId>com.adobe.cq</groupId>
<artifactId>core.wcm.components.examples</artifactId>
<filter>true</filter>
</subPackage>
</subPackages>
</configuration>
</plugin>
<plugin>
<groupId>com.day.jcr.vault</groupId>
<artifactId>content-package-maven-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<verbose>true</verbose>
<failOnError>true</failOnError>
</configuration>
</plugin>


通过将排除模式更改为 ./i18n,我尝试了多种方法。但它对我不起作用。

我也尝试将 filterSource 添加到 filevault-package-maven-plugin 配置中,但随后出现错误 Project contains filter.xml in META-INF/vault 但也指定了过滤器源。

最佳答案

您必须从内容包中删除节点。您的内容包中不应包含任何未明确包含在过滤规则中的内容。

你的问题是奇怪的向后兼容性。至少在 CQ5 中还没有过滤模式( mode="replace|merge|update" )。在那些日子里,规则是替换过滤规则涵盖的所有内容。合并所有其他内容。当引入过滤模式时,它们变得不直观但向后兼容。在您的情况下,i18n 文件夹已合并。

经验法则:再次导入和导出的内容包应该是相同的。 (这对你来说不是这种情况)

有关更多详细信息,请参阅 https://jackrabbit.apache.org/filevault/filter.html#Usage_for_Import.2FInstallation 中的表格想要查询更多的信息。对于您的 i18n 文件夹,它说:

nodes which are ancestors of covered rules: deserialized from content package (for backwards compatibility reasons), nodes which are not ancestors of covered rules: not touched. One should not rely on this behaviour, i.e. all items in the content package should always be covered by some filter rule to make the behaviour more explicit.

关于adobe - 排除过滤器不适用于 filevault-package-maven-plugin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61112200/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com