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的整個開發流程。

相關文章
相關標籤/搜索