1

我们正在尝试将我们的自定义 domainplittings.xml 和 urlrewriterules.xml 文件与我们的 url 重写规则一起放到 share/system/config/cluster 文件夹中,但是每次我们运行 deployServer gradle 任务时,这些文件都是从本地 gradle 的 bc_urlrewrite.zip 复制的回购。

我们已经尝试使用以下代码在其中一个墨盒中定义自定义部署/deploy.gradle 文件:

project(':bc_urlrewrite') {
  afterEvaluate {
      deployment.files.share {
          exclude { 
              new File(destinationDir, it.path) == new File(target.shareDirectory, 'system/config/cluster/domainsplittings.xml')
              new File(destinationDir, it.path) == new File(target.shareDirectory, 'system/config/cluster/urlrewriterules.xml')                       
          }
      }                                    
  }

}

如此处所述:https ://support.intershop.com/kb/index.php/Display/282B92#Cookbook-DeploymentToolsICM7.9-Recipe:ReplaceaFileDeployedbyAnotherComponent但这不起作用。文件仍然从 deployServer 任务上的 bc_urlrewrite.zip 复制。

我们做错了什么吗?我们不需要这些文件,因为它们包含演示 intronics 商店的 url 重写规则。

感谢您的帮助!

4

1 回答 1

3

是的,文档不是很清楚,它曾经是你可以简单地重载设置。可以试试下面的配置。

apply plugin: com.intershop.deploy.cartridge.CartridgeDeploymentPlugin
   if (target.includeShare && findProject(':bc_urlrewrite')) {
       project(':bc_urlrewrite') {
           def excludeFiles = {
               deployment.files.share {
                   exclude 'system/config/cluster/urlrewriterules.xml'
                   exclude 'system/config/cluster/domainsplittings.xml'
               }
           }
           if (project.state.executed) {
               excludeFiles()
           } else {
               afterEvaluate(excludeFiles)
           }
       }
   }
于 2018-09-02T07:36:34.473 回答