AEM CIF核心组件项目是使用AEM,CIF和Adobe Commerce开始的项目。该项目包含可重复使用的商务核心组件,这些组件将服务器端渲染的AEM组件与客户端React商业组件(MPA)相结合,用于动态体验 /数据。
该项目旨在与AEM站点核心组件一起使用。 AEM CIF核心组件在可能的情况下使用AEM站点核心组件作为基础并扩展它们。
要启动一个新项目,请查看我们的原型项目。还可以查看我们使用WCM和CIF核心组件的Venia样本项目,以提供令人惊叹的商店前体验。
有关AEM CIF核心组件的使用和配置说明以及AEM组件开发的简介,请参见AEM内容和商业文档。
技术预览中的组件可能随时以无向后兼容的方式变化。这包括所有剧本,尤其是内容结构,API,标记和样式(如果适用)。不要在生产中使用这些组件。
AEM CIF核心组件的最新版本需要低于最低系统要求:
| CIF核心组件 | AEM作为云服务 | AEM 6.5 | AEM商业附加组件 | Adobe Commerce | 爪哇 |
|---|---|---|---|---|---|
| 2.15.0 | 连续 | 6.5.18 | V2022.08.02.00 | 2.4.2 EE | 11 |
有关以前版本的要求列表,请参见历史系统要求。
对于AEM作为云服务部署,本项目需要在每个AEM上作为云服务环境的CIF附加组件。 CIF附加组件是自动安装的,不需要额外的部署。 CIF附加组件也可用于本地开发,其中来自软件分销门户的AEM SDK。
对于AEM本地安装,该项目需要AEM Commerce Add-on for AEM 6.5来通过利用产品选择器,产品资产视图和连接器包提供的产品控制台来改善创作体验。 AEM Commerce Add-on for AEM 6.5也可以在软件分发门户网站上使用。必须单独安装。
该项目依赖于AEM站点的核心组件。它们通常作为AEM的一部分安装。如果您没有示例内容选项安装AEM,则必须在使用AEM CIF核心组件之前手动部署它们。
从2.3.2开始,Adobe Commerce支持可缓存的GraphQl请求,并以0.2.1版本的CIF Core组件默认使用它。为了使组件与Adobe Commerce合作2.3.1您可以在以下位置手动禁用此功能:
mvn clean install ,以将工件安装到本地的Maven存储库中。all项目,然后运行mvn clean install content-package:install 。这是设置过程的完整视频演练。
如果您想自己构建所有模块并获取所有最新的(尚未发布的)更改,只需在存储库的根部构建和安装所有模块:
mvn clean install -PautoInstallAll
默认情况下,将所有内容安装到localhost:4502没有任何上下文路径。您还可以使用以下Maven属性配置安装位置:
aem.host实例的名称aem.port :AEM实例的端口号aem.contextPath :AEM实例的上下文路径(如果不是/ )该项目依赖于AEM 6.5.7 cq-quickstart Uberjar。这可在https://repo.adobe.com上公开提供。
有关Uberjar的更多详细信息,请访问如何使用Apache Maven文档页面构建AEM项目。
AEM CIF核心组件的发布版本可在Maven Central存储库中获得。要将AEM CIF核心组件软件包包括在您自己的项目Maven构建中,您可以添加依赖关系
<dependency>
<groupId>com.adobe.commerce.cif</groupId>
<artifactId>core-cif-components-all</artifactId>
<type>zip</type>
<version>x.y.z</version>
</dependency>
和子软件包部分
<subPackage>
<groupId>com.adobe.commerce.cif</groupId>
<artifactId>core-cif-components-all</artifactId>
<filter>true</filter>
</subPackage>
到content-package-maven-plugin 。
要将AEM CIF核心组件与Adobe Commerce环境或第三方商业部署联系起来,请遵循配置步骤。对于多商店 /站点设置,需要其他步骤将AEM站点链接到Adobe Commerce Store View配置。
为了自定义CIF核心组件,我们在文档中提供了用例和示例,可以自定义CIF Core组件。
组件的客户端JavaScript代码使用用业力执行的Mocha单元测试涵盖。请确保有关每项贡献的新客户端代码都涵盖了测试,并且所有测试通过。
cd ui.apps
npm install
npm test业力将使用Chrome和Firefox进行测试。确保已安装两个浏览器。
您可以在eclipse-formatter.xml文件中找到代码格式规则。对于每个构建,自动检查代码格式。要自动格式化您的代码,请运行:
mvn clean install -Pformat-code对于格式化JavaScript和CSS,我们使用更漂亮。在ui.apps项目中运行npm test时,将自动检查格式。要自动格式化代码,请在ui.apps中运行以下命令:
npm run prettier:fix该项目的发行版是通过手动运行MVN版本触发的:准备发行版:在此存储库的根文件夹的master分支上mvn release:prepare release:clean 。选择发行版和下一个快照版本后,这将提交更改,以及一个发行版git标签,例如core-cif-components-reactor-xyz 。请注意,这些提交不会自动将其推向GIT存储库,因此您有一些时间检查更改然后手动推动它们。然后推动触发了一个专用的CircleCI构建,该构建执行了标记的工件部署到Maven Central。
重要的是:该项目确实会发行Maven反应堆,不要触发子模块的发行版!
注意:如果需要由于API的更改和语义版本来更新Java捆绑包的版本,则可以通过在Parent Project文件夹中运行以下命令来轻松更新Parent POM版本,并且所有POM都引用了Parent POM版本: mvn versions:set -DnewVersion=xyz-SNAPSHOT 。这将确保所有项目具有相同的版本。
欢迎捐款!阅读贡献指南以获取更多信息。
该项目是根据Apache V2许可证获得许可的。有关更多信息,请参见许可证。