AEM - Adobe CMS 扒坑记之始

AEM是Adobe公司所出的商业内容管理系统,全称阿豆比体验管理系统(Adobe Experience Manager),其前身叫CQ,分别有CQ5 CQ6两个大版本。它提供了整套的网站内容管理系统解决方案,是一个企业级的重型系统。固然,这套系统在中国几乎没什么人知晓。但在澳洲,这系统几乎在全部金融行业遍地开花了。html

基于客户的发展战略,不可避免地开始了AEM的扒坑之旅。不过,此前一直在扒Drupal的坑,再扒一堆坑也可有可无了。java

AEM 技术栈

Apache Sling

Apache Sling 是一个之内容为中心的网络框架。其使用Java的内容仓库去存储与管理内容,好比Apache JackrabbitCRXapache

  • 基于REST原则,之内容为导向进行开发
  • CQ5(或者说AEM5, 6)自然集成
  • 用于处理HTTP的渲染与数据存储的请求。这是一种新的方式,它将在后台将内容组装,渲染最终将其呈现给用户
  • 能将内容对象与处理数据的组成映射起来
  • 支持服务端与AJAX请求
  • 支持多种脚本语言(好比,JSP, ESP, Ruby等)
  • http://incubator.apache.org/projects/sling.html 查看更多关于Sling的信息

OSGi (Apache Felix)

CQ5 内建了基于OSGI R4 服务平台(OSGi Service Platform Release 4) 的应用程序框架。浏览器

  • 是一个针对JAVA的动态模块系统
  • 发展自通用中间键。不少第三方的组件能够以bundle的形式进行复用
  • OSGI的bundle能够包含经编译后的JAVA代码,脚本,或者内容。这些都可根据须要将其加载到相应的仓库,或者对其进行配置等等。

得到软件

全部须要的,只是一个可独立执行的jar包。因为是商业软件,License是必须的。咱们将其放到一个文件夹下,暂且命名为aem-install吧。
bash

关于目录下的 crx-quickstart 是当你启动后,自动生成的。里面包含了,你开发所须要的全部,包含全部的内容,以及配置等等。网络

准备

AEM 是一个基于JAVA跨平台的系统,因此OS X, 桌面版 Windows, Linux确定均可以支持啦。框架

惟一须要注意的是,AEM运行在JAVA 7上。因此若是你是用的JAVA 8,但却装有JAVA 7的话,只须要切换一下JAVA_HOME。将这条命令放在你的 .bashrc 或者.zshrc source一下就搞定啦。网站

export JAVA_HOME=`/usr/libexec/java_home -v 1.7`

启动

好的,一准备工做就绪,那么咱们就开始咱们的正式启动。好比有趣的是,Adobe提供了两种方法供咱们使用。ui

1. 控制台code

不用说,做为一个职业代码人,咱们仍是比较喜欢这样的方式的。

java -Xmx1024M -jar cq-author-p4502.jar -p 4502 -r author

其中,如下两个参数是可省的,由于默认的参数就是 端口 4502模式 author。固然,若是你的电脑足够强大,-Xmx1024M 也是能够省的。

  • -p指的是工做端口
  • -r指的是启动模式。常见的模式有authorpublish两种。固然还有其余的,用得很少就此略过罢

2. GUI 双击

固然,有时为了方便,也能够直接双击cq-author-p4502.jar启动。只是有几个须要注意的地方。

默认的状况,是以author模式,启动在localhost:4502。但咱们能够在启动之前,经过修改jar包的名字,达到不一样模式不一样端口的效果。

cq-<instance-type>-p<port-number>.jar

好比,修改为

cq-author-p4502.jar

启动,这就达到了以author模式启动,端口设置在 4502的效果。
同理,修改为

cq-publish-p4503.jar

启动,就将以publish的模式启动,端口是4503
理想的状况是,你须要同时启动两个instance,只须要把jar包和license文件放在相应目录下就能够了。如:

<aem-install>/author
和
<aem-install>/publish

就绪

当AEM启动后,会自动打开浏览器定位到相应的页面。好比,个人是localhost:4502。以admin:admin登录就能够开始正式的开发之路了。

小结

那么就此开始,咱们已经扒完了AEM的第一坑了,AEM的填坑之路就正式开始了。接下来几篇,我将着重在开发之上,讲解一下AEM的整个开发流程。

相关文章
相关标签/搜索