Scripts agrupados pré-compilados

O AEM as a Cloud Service é compatível com a implantação dos scripts de componente ui.apps como scripts agrupados pré-compilados. Isso possibilita que os desenvolvedores pré-compilem os scripts no momento da criação e os empacotem como pacotes OSGi.

As vantagens de se implantar scripts pré-compilados por meio de pacotes OSGi

Implantar os scripts como scripts agrupados pré-compilados tem os seguintes benefícios:

  • compilar scripts no momento da criação possibilita que os desenvolvedores descubram erros antecipadamente no processo de desenvolvimento
  • as dependências de script da API Java são explicitamente definidas pelos cabeçalhos do pacote Import-Package e Export-Package
  • a herança (pelo sling:resourceSuperType) e a delegação para outros tipos de recursos (pelo elemento de bloco data-sly-resource do HTL ou pela tag JSP sling:include, por exemplo) podem ser mapeadas pelos metadados do pacote
  • o controle de versão do tipo de recurso pode ser empregado de maneira semelhante às APIs Java

Pré-compilação e importações de pacotes

O htl-maven-plugin pode validar a sintaxe dos scripts HTL, mas também pode ser usado para transcompilar os scripts HTL em classes Java. Eles são adicionados à pasta generated-sources do projeto Maven e selecionados pelo maven-compiler-plugin.

O bnd-maven-plugin pode ser adicionado para gerar os metadados do pacote OSGi para importações de API Java.

Herança e delegação

A estrutura OSGi fornece uma maneira poderosa de definir Requisitos e Recursos para expressar contratos entre vários componentes. Eles são descritos por metadados e aplicados no tempo de execução. Os scripts agrupados usam esse mecanismo para expressar suas relações de herança (sling:resourceSuperType) e delegação (incluindo outros tipos de recursos no processo de renderização).

O plug-in bnd do projeto scriptingbundle-maven-plugin pode ser usado para extrair os Requisitos e Recursos correspondentes aos scripts fornecidos pelo pacote de conteúdo ui.apps.

Suporte ao Arquétipo de projeto do AEM

A partir da versão 31, o Arquétipo de projeto do AEM pode ser usado para configurar corretamente um projeto do AEM as a Cloud Service para usar scripts agrupados pré-compilados. Além disso, o Arquétipo de projeto do AEM configura o Plug-in Build Analyzer Maven do SDK do AEM as a Cloud Service para validar as dependências no nível do pacote Java e no nível do script.

Nesta página