首页 > 解决方案 > 使用自定义 domainplittings.xml 和 urlrewriterules.xml 运行 deployServer gradle 任务失败

问题描述

将我们的自定义 urlrewriterules.xml 和 domainplittings.xml 文件添加到“staticfiles\share\system\config\cluster\”文件夹中的墨盒后,我们无法再执行 deployServer gradle 任务。任务失败并出现以下错误:

* What went wrong:
Execution failed for task ':init_project:deployShareFiles'.
> Could not deploy files of task :init_project:deployShareFiles
   > Task :init_project:deployShareFiles: Resource 'C:\Work\Project\intershop-ci\sources\projects\webshop\build\server\share\system\config\cluster\domainsplittings.xml' already defined for Task :bc_urlrewrite:deployShareFiles
   > Task :init_project:deployShareFiles: Resource 'C:\Work\Project\intershop-ci\sources\projects\webshop\build\server\share\system\config\cluster\urlrewriterules.xml' already defined for Task :bc_urlrewrite:deployShareFiles

有谁知道为什么会这样,我们如何添加我们自己的 url 重写规则而不在每次 deployServer 之后编辑这些文件(从 bc_urlrewrite 盒复制系统规则)?

谢谢你的回答!

标签: intershop

解决方案


请查看Cookbook - 部署工具 ICM 7.x / 23 配方:替换由另一个组件部署的文件

替换文件是一项严厉的措施。考虑使用内容过滤器来更改现有文件,而不是提供您自己的版本,因为它可以简化未来的迁移。

看起来您不能使用配置框架的环境特定文件来重载$IS_SHARE/system/config/cluster/domainsplittings.xmland$IS_SHARE/system/config/cluster/urlrewriterules.xml文件(使用固定路径加载,而不是通过配置框架加载)。

该错误表明两个不同的组件 ( bc_urlrewritevs. init_project) 正在尝试部署相同的目标文件。你有两个选择:


推荐阅读