如何使用IntelliJ IDEA开发AEM项目

概述

要开始在IntelliJ上开发AEM,需要执行以下步骤。

在本操作说明的其余部分中,将更详细地解释每个操作说明。

  • 安装IntelliJ
  • 基于Maven设置AEM项目
  • 在Maven POM中准备对IntelliJ的JSP支持
  • 将Maven项目导入IntelliJ
注意

本指南基于IntelliJ IDEA Ultimate Edition 12.1.4和AEM 5.6.1。

安装IntelliJ IDEA

JetBrains的“下载”页面下载IntelliJ IDEA。

然后,按照该页面上的安装说明操作。

根据Maven设置AEM项目

接下来,使用Maven设置项目,如How-To Build AEM Projects using Apache Maven中所述。

要开始在IntelliJ IDEA中使用AEM项目,5分钟入门中的基本设置就足够了。

准备对IntelliJ IDEA的JSP支持

IntelliJ IDEA还可以在使用JSP(例如,

  • 自动完成标记库
  • <cq:defineObjects /><sling:defineObjects />定义的对象的感知

要使其正常工作,请按照使用Apache Maven构建AEM项目中How-To Wark with JSPs的说明进行操作。

导入Maven项目

  1. 在IntelliJ IDEA中,打开​Import​对话框,方式

    • 如果尚未打开项目,请在欢迎屏幕中选择​导入项目
    • 从主菜单中选择​文件 — >导入项目
  2. 在导入对话框中,选择项目的POM文件。

    chlimage_1-45

  3. 继续默认设置,如下面的对话框所示。

    chlimage_1-46

  4. 通过单击​Next​和​Finish,继续完成以下对话框。

  5. 您现在已设置为使用IntelliJ IDEA进行AEM开发

    chlimage_1-47

使用IntelliJ IDEA调试JSP

使用IntelliJ IDEA调试JSP时,需要执行以下步骤

  • 在项目中设置Web Facet
  • 安装JSR45支持插件
  • 配置调试配置文件
  • 为调试模式配置AEM

在项目中设置Web Facet

IntelliJ IDEA需要了解在何处查找JSP以进行调试。 由于IDEA无法解释content-package-maven-plugin设置,因此需要手动配置此设置。

  1. 转到​File -> Project Structure
  2. 选择​Content​模块
  3. 单击模块列表上方的​+,然后选择​Web
  4. 作为Web资源目录,选择项目的content/src/main/content/jcr_root subdirectory,如下面的屏幕快照所示。

chlimage_1-48

安装JSR45支持插件

  1. 转到IntelliJ IDEA设置中的​Plugins​窗格
  2. 导航到​JSR45 Integration​插件,并选中该插件旁边的复选框
  3. 单击​Apply
  4. 请求重新启动IntelliJ IDEA

chlimage_1-49

配置调试配置文件

  1. 转到​Run -> Edit Configurations
  2. 点击​+​并选择​JSR45 Remote
  3. 在配置对话框中,选择​Application Server​旁边的​Configure​并配置通用服务器
  4. 如果要在开始调试时打开浏览器,请将起始页设置为相应的URL
  5. 如果您使用vlt autosync,请删除所有​在启动​任务之前的任务;如果您不使用vlt autosync,请配置相应的Maven任务
  6. 在​启动/连接​窗格中,根据需要调整端口
  7. 复制IntelliJ IDEA提出的命令行参数

chlimage_1-50 chlimage_1-51

为调试模式配置AEM

所需的最后一步是使用IntelliJ IDEA建议的JVM选项启动AEM。

为此,您可以直接启动AEM jar文件并添加这些选项,例如使用以下命令行:

java -Xdebug -Xrunjdwp:transport=dt_socket,address=58242,suspend=n,server=y -Xmx1024m -XX:MaxPermSize=256M -jar cq-quickstart-5.6.1.jar

您还可以将这些选项添加到crx-quickstart/bin/start的开始脚本中,如下所示。

# ...

# default JVM options
if [ -z "$CQ_JVM_OPTS" ]; then
 CQ_JVM_OPTS='-server -Xmx1024m -XX:MaxPermSize=256M -Djava.awt.headless=true'
fi

CQ_JVM_OPTS="$CQ_JVM_OPTS -Xdebug -Xrunjdwp:transport=dt_socket,address=58242,suspend=n,server=y"

# ...

开始调试

现在,您都已设置为在AEM中调试JSP。

  1. 选择​运行 — >调试 — >您的调试配置文件
  2. 在组件代码中设置断点
  3. 在浏览器中访问页面

chlimage_1-52

使用IntelliJ IDEA调试包

可以使用标准的通用远程调试连接来调试包中的代码。 您可以按照Jetbrain文档进行远程调试

在此页面上