Scripts agrupados pré-compilados precompiled-bundled-scripts
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 advantages
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 definidas explicitamente por meio dos cabeçalhos dos pacotes
Import-Package
eExport-Package
. - A herança (pelo
sling:resourceSuperType
) e a delegação a outros tipos de recursos (pelo elemento de blocodata-sly-resource
do HTL ou pela tag JSPsling: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 precompilation
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 inheritance-delegation
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 ui.apps
.Pacote de conteúdo
Suporte ao Arquétipo de projeto do AEM support
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 Analisador de build do 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.