SAP Commerce(Hybris)项目启动流程

背景

SAP Commerce(Hybris)作为SAP旗下的电商模块,主要分为B2B和B2C两块。一直以来,由于种种原因,对hybris项目资料甚少,且不完整,遂整理一版,方便查阅。

本文以windows电脑启动为例。

环境准备

1、JDK17以上

2、maven3.0以上

3、也是最重要的需要SAP Commerce基础包

以最新稳定版本2205为例,需要一个有权限的sap账号去对应的平台下载一个zip文件,文件名类似 CXCOMM220500P_X-XXXXXXXX.zip。

解压后完整目录如下:

下载链接如下:

SAP Software Center

注册登录后,进入SAP for Me页面,搜索SAP Commerce 2205,就能够下载。

注意,这个网站可以私人注册,但是无法下载我们需要的zip包,通常来说,需要特殊授权的公司账号,才能下载对应的zip包。

下面是我的私人账号,可以搜索,但是没有对应的下载内容。

模板启动

完成环境准备后,就可以直接以模板的方式来启动项目。

在官方这种启动方式叫做Recipe,翻译成中文就是食谱或者菜谱,有点按着食谱做菜的意思。

这种方式之所以能启动,要简单说说Hybris这个项目的结构,通过前面的2205.zip的压缩包解压,我们得到了一系列文件夹,其中负责启动的项目的文件位于hybris\bin\platform目录下面,其中有一个hybrisserver.bat脚本用于启动项目,其主要作用是把各种扩展模块的项目文件,复制到tomcat容器对应的文件夹下面,然后启动tomcat,就可以访问对应的资源。

如果是常规的启动,需要在hybris\config的localextensions.xml配置各种自定义的扩展模块,然后以特定的顺序来启动项目。

但是以Recipe的方式来启动,则是直接通过脚本配置好了对应的扩展模块,然后把内容复制到对应的config文件夹下面,进行项目的初始化启动。

项目提供了四个模板进行启动,位于installer\recipes文件夹下

通常我们会使用cx这个文件夹来进行项目启动,其实本质就是一个gradle脚本,来安装一些预先定义好的模块。

进入cx文件夹,可以直接看到安装说明:

大致意思是,进入installer文件夹,依次执行三步动作,就可以启动项目。

这里给出window下的执行命令,进入installer文件夹,cmd命令执行如下脚本:

install.bat -r cx setup -A local_property:initialpassword.admin=nimda & install.bat -r cx initialize -A local_property:initialpassword.admin=nimda & install.bat -r cx start

三个命令,启动platform,初始化项目,启动项目,设置admin密码,这里设置的是nimda。 

注意,这是第一次启动,之后可以直接使用 

install.bat -r cx start

命令直接启动即可。

在等待1-2小时,当出现如下提示,项目就成功启动了。

可以通过https://localhost:9002/backoffice进入后台管理界面。

当然也可以通过指定的url进入我们的b2b或者b2c模块的电商首页:

在进入之前先设置一下本机的host文件配置:

127.0.0.1    apparel-uk.local apparel-de.local electronics.local powertools.local

这是由于同时启动了多个项目,需要不同的url来进行访问:

B2B首页: 

  • http://powertools.local:9001/yb2bacceleratorstorefront

B2C首页:

  • http://electronics.local:9001/yacceleratorstorefront
  • http://apparel-de.local:9001/yacceleratorstorefront
  • http://apparel-uk.local:9001/yacceleratorstorefront

 

 

常规启动

经过本人实测,在以模板启动的方式启动项目后,仍可以通过hybris\bin\platform文件夹下面的hybrisserver.bat脚本启动项目,也从另一个角度证明了,模板启动只是常规启动的快捷方式,其本质,代码编辑及环境配置没有差异。

下面介绍正常启动方式,即正式项目中的启动方式。

1 设置环境变量

设置ant环境变量,由于hybris主要有ant来进行编译,且项目中已经自带了ant版本,所以只需要在hybris\bin\platform文件夹下,执行setantenv.bat脚本即可。

脚本内容如下:

@echo off
set ANT_OPTS=-Xmx2g -Dfile.encoding=UTF-8 -Dpolyglot.js.nashorn-compat=true -Dpolyglot.engine.WarnInterpreterOnly=false --add-exports java.xml/com.sun.org.apache.xpath.internal=ALL-UNNAMED --add-exports java.xml/com.sun.org.apache.xpath.internal.objects=ALL-UNNAMED
set ANT_HOME=%~dp0apache-ant
set PATH=%ANT_HOME%\bin;%PATH%
rem deleting CLASSPATH as a workaround for PLA-8702
set CLASSPATH=

echo ant home: %ANT_HOME%
echo ant opts: %ANT_OPTS%
ant -version

2 编译项目

hybris\bin\platform文件夹下,执行如下命令:

ant clean all

注意,建议这里只有在第一次运行hybris,或者说项目结构已损坏的清空下使用,如果是正常的项目文件更新,建议使用:

ant all 

其原因是,ant clean all会删除项目文件夹下的所有编译文件,重新开始编译和构建项目,由于项目文件较多,会耗费较多时间,通常需要半小时左右。

如果仅仅使用ant all命令,一般3-7分钟足够。

当然正式的项目运行,建议使用Jrebel热部署,可以免去每次项目修改后ant all的操作,加快开发效率。 

3 初始化数据库

在完成代码的编译后,需要对数据库以及其他的系统数据进行初始化。

hybris\bin\platform文件夹下,执行:

ant initialize

也可以在项目启动后,通过hybris administration console | Login

选择Platform>Initialization 

点击Initialize

重新生成数据库表结构及数据,通常这个操作是在项目初始化或者建表,修改表结构以后进行。

4 启动项目

hybris\bin\platform文件夹下,执行如下命令:

hybrisserver.bat  debug

代表以debug模式运行,可以在后台进行断点调试。 

许可证

初次启动项目,会在hybris\config\licence文件夹下生成一个installedSaplicenses.properties文件,不要编辑这个文件,不然会造成项目无法启动。

注意项目初次启动,无需刻意安装许可证,但是启动时只会配置一个30天的临时许可证。当第一次生成的许可证过期后,可按如下方法生成新的许可证。

临时许可证

hybris\bin\platform文件夹下,执行如下命令:

license.bat -temp CPS_SQL

这里使用的是默认数据HSQL, 详细支持数据库及代码如下,可以根据当前数据库选择安装对应的临时许可证:

 永久许可证

如果有买许可证或者生成环境下,hybris\bin\platform文件夹下使用命令如下:

./license.sh -install /path/to/fileContainingLicense.txt

查看许可证

 hybris\bin\platform文件夹下:

./license.sh -show
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值