Problema

Como podemos depurar nosso aplicativo em execução em um servidor AEM remoto (ou local)?

Solução

Para depurar um aplicativo CQ5, você pode usar a depuração remota do java.

Aviso: Não ative a depuração remota em seu ambiente de produção, a menos que seja necessário, pois isso pode afetar significativamente o desempenho do seu aplicativo.

Etapa 1: Adicionar o Parâmetro JVM de Depuração Remota

  1. Para usar a depuração remota, você deve iniciar o AEM com este parâmetro da JVM:
    -agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n

É possível adicionar o parâmetro seguindo um destes procedimentos:

  • Adicione à sua variável de ambiente crx-quickstart/bin/start script CQ_JVM_OPTS (para que seu servidor sempre inicie no modo de depuração).
  • Incluí-lo como um parâmetro ao iniciar o AEM com java -jar diretamente. Por exemplo, java -Xmx512m -agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n -jar cq-author-4502.jar

Notas

  • Se necessário, você pode alterar a porta definida em "..., endereço = 8000, ..." de 8000 para algo que funcione melhor em seu ambiente.
  • Se você perceber que não está funcionando, evite bifurcá-lo, especificando a opção de linha de comando -nofork.
  • O script de início está localizado em crx-quickstart/server para versões do CQ <5.5

Etapa 2: Iniciar uma sessão de depuração remota

Para iniciar uma sessão de depuração remota a partir do Eclipse, faça o seguinte:

  1. Abra o Eclipse.
  2. Escolha Run > Debug Configurations.
  3. Clique com o botão direito do mouse em Aplicativos Java Remotos e selecione Novo.
  4. Selecione seu projeto CQ5 em Project.
  5. Digite a porta na configuração "endereço" do parâmetro jvm definido acima. No exemplo, é a porta 8000 (e o nome do host da máquina à qual você está se conectando, provavelmente localhost)
  6. Para iniciar uma sessão de depuração, clique duas vezes na nova configuração na tela Configurações de Depuração depois de salvá-la.

Aplica-se a:  Adobe Experience Manager 6.x

Esta obra está licenciada sob uma licença não adaptada da Creative Commons Attribution-Noncommercial-Share Alike 3.0  As publicações do Twitter™ e do Facebook não são cobertas pelos termos do Creative Commons.

Avisos legais   |   Política de privacidade online