繁体   English   中英

hybris 中的扩展构建顺序是什么?

[英]Which is the extension build order in hybris?

我在“extensioninfo.xml”中有这些扩展:

<extension dir="${HYBRIS_BIN_DIR}/ext-commerce/b2bapprovalprocess"/>
<extension dir="${HYBRIS_BIN_DIR}/ext-commerce/b2bcommerce"/>
<extension dir="${HYBRIS_BIN_DIR}/ext-template/b2bstore"/>
<extension dir="${HYBRIS_BIN_DIR}/ext-commerce/basecommerce"/>
<extension dir="${HYBRIS_BIN_DIR}/ext-content/bmecat"/>

这些扩展是如何构建的? 如果我将它们放在同一个“extensioninfo.xml”文件中,是否有任何顺序? 是否会在“b2bcommerce”之前构建“b2bapprovalprocess”,在“b2bstore”之前构建“b2bcommerce”等等......?

该顺序由扩展的依赖关系定义,使用扩展的 extensioninfo.xml 中的 requires-extension。

如果 C 需要扩展 B,而 B 需要扩展 A,则顺序为 A、B、C。

如果 C 需要扩展 A,而 B 需要扩展 A,则顺序可以是 A、B、C 或 A,C 或 B 的顺序是随机的,如果在同一级别,则可能有 2 个或多个扩展。那个水平。

在下面来自 Acceleratorcms 扩展的示例代码中,我们可以确定acceleratorcms或 Acceleratorservices acceleratorservicescms2lib之前acceleratorcms被处理。 但是,我们不能确定哪个会是第一个: cms2libacceleratorservices服务。

<extensioninfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="extensioninfo.xsd">
    <extension abstractclassprefix="Generated" classprefix="AcceleratorCms" managername="AcceleratorCmsManager" managersuperclass="de.hybris.platform.jalo.extension.Extension" name="acceleratorcms">              
        <requires-extension name="cms2lib"/>                
        <requires-extension name="acceleratorservices"/>                
        <coremodule generated="true" manager="de.hybris.platform.acceleratorcms.jalo.AcceleratorCmsManager" packageroot="de.hybris.platform.acceleratorcms"/>            
    </extension>
</extensioninfo>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM