如何使用Eclipse调试AEM应用程序

要调试AEM应用程序,您可以使用​ Java远程调试。

描述 description

环境

  • Adobe Experience Manager (AEM) 6.4
  • Adobe Experience Manager (AEM) 6.5

问题/症状

如何调试在远程(或本地) AEM服务器中运行的应用程序?

解决方法 resolution

要调试AEM应用程序,您可以使用​ Java远程调试。

警告: 除非必要,否则请勿在生产环境中启用远程调试,因为它可能会极大地影响应用程序性能。

步骤1:添加远程调试JVM参数

要使用远程调试,必须使用以下JVM参数启动AEM:
-agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n

可通过执行以下任一操作来添加参数:

  • 将其添加到您的crx-quickstart/bin/start脚本CQ_JVM_OPTS环境变量(以便您的服务器始终以调试模式启动)。
  • 直接使用java -jar启动AEM时将其作为参数包含。 例如,java -Xmx512m -agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n -jar cq-author-4502.jar

注释

  • 如有必要,您可以将“……,address=8000,…”下定义的端口从8000更改为适合您环境的端口。
  • 如果您发现它不起作用,请通过指定 — nofork命令行选项来避免分叉java进程。
  • 开始脚本位于crx-quickstart/bin下

步骤2:启动远程调试会话

要从Eclipse启动远程调试会话,请执行以下操作:

  1. 打开Eclipse。
  2. 选择 运行 >   调试配置。
  3. 右键单击“远程Java应用程序”并选择“新建”。
  4. 在项目下选择您的AEM项目。
  5. 在上面定义的jvm参数的“地址”配置中键入端口。 在本例中,它是8000端口(以及您连接到的计算机的主机名,很可能是localhost )
  6. 要启动调试会话,请在保存新的 配置后,在“调试配置”屏幕中双击该配置
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f