Erros intermitentes de StackOverflow durante a compilação de pipeline do AEMaaCS
Um StackOverflowError ocorre durante a fase de compilação no Adobe Experience Manager as a Cloud Service (AEMaaCS), causado pela resolução de dependência inconsistente entre os provedores de nuvem. Para corrigir isso, verifique as configurações do pom.xml, corrija problemas de script HTL, inspecione o acesso ao repositório e aplique uma solução temporária usando as dependências em cache.
Descrição description
Ambiente
Adobe Experience Manager as a Cloud Service (AEMaaCS) - Sites
Problema/Sintomas
- As compilações de pipeline falham intermitentemente com o erro: Exceção no thread "main" java.lang.StackOverflowError.
- Algumas compilações são bem-sucedidas, enquanto outras falham sem extrair as dependências necessárias.
- Os registros mostram que o Maven ignora a busca de dependências do repositório durante compilações com falha.
Causa
O Cloud Manager cria o código do cliente usando dois provedores de nuvem em paralelo, parando um quando o outro é concluído. Somente um provedor usa o armazenamento em cache, portanto, alguns criam dependências de reutilização, enquanto outros devem buscá-las. Quando as dependências estão ausentes e a lógica recursiva (por exemplo, em scripts HTL) é acionada, ela pode levar a StackOverflowError. Normalmente, isso resulta de como as dependências são gerenciadas no lado do cliente.
Resolução resolution
Para corrigir erros de StackOverflow durante builds de controle de qualidade do AEM, siga estas etapas:
- Verifique a configuração de dependência revisando todos os
pom.xmlarquivos nos submódulos. Verifique se as configurações do repositório Maven estão corretas e se a dependência necessária (gs4tr-globallink-adaptors-aem.all) está definida e acessível corretamente. Se a dependência não estiver disponível, adicione-a a uma pasta de biblioteca local e faça referência a ela nopom.xmlusando o escoposystemPath. - Inspecione o acesso ao repositório, configurando as credenciais para acessar repositórios privados no Maven
settings.xml, e definindo as variáveis de ambiente necessárias (por exemplo,MAVEN_GLOBAL_LINK_PASSWORD) corretamente. - Inspecione o acesso do repositório configurando credenciais para repositórios privados no arquivo Maven
settings.xml. Verifique se as variáveis de ambiente necessárias (por exemplo,MAVEN_GLOBAL_LINK_PASSWORD) estão definidas corretamente. - Verifique nos logs de pipeline se há dependências ausentes, URLs de repositório incorretas ou erros 404 ao recuperar dependências de repositórios especificados.
- Tente novamente os pipelines com falha como uma solução alternativa temporária. As execuções bem-sucedidas podem usar dependências em cache até que uma correção permanente seja implementada.
Leitura relacionada
- Configure seu pipeline no Guia do Usuário do AEM as a Cloud Service.
- Introdução ao HTL na documentação do AEM.