Scripts agrupados precompilados precompiled-bundled-scripts
AEM as a Cloud Service admite la implementación de los scripts de componentes ui.apps
como scripts agrupados precompilados. Esto permite a los desarrolladores precompilar sus scripts en el momento de la compilación y empaquetarlos como paquetes OSGi.
Ventajas de implementar scripts precompilados a través de paquetes OSGi advantages
La implementación de los scripts como scripts empaquetados precompilados tiene las siguientes ventajas:
- La compilación de scripts en tiempo de compilación permite a los desarrolladores descubrir errores al principio del proceso de desarrollo.
- Las dependencias de script de la API de Java se definen explícitamente mediante los encabezados de paquete
Import-Package
yExport-Package
. - La herencia (a través de
sling:resourceSuperType
) y la delegación a otros tipos de recursos (a través del elemento de bloquedata-sly-resource
de HTL o a través de la etiqueta JSPsling:include
, por ejemplo) se puede asignar a través de los metadatos del paquete. - Las versiones de tipo de recurso se pueden aplicar de forma similar a las API de Java.
Precompilaciones e importaciones de paquetes precompilation
El htl-maven-plugin
puede validar la sintaxis de los scripts HTL, pero también se puede utilizar para transformar los scripts HTL en clases de Java. A continuación, se añaden a la carpeta generated-sources
del proyecto Maven y maven-compiler-plugin
los recoge.
Se puede agregar bnd-maven-plugin
para generar los metadatos del paquete OSGi para las importaciones de la API de Java.
Herencia y delegación inheritance-delegation
El marco OSGi proporciona una gran opción para definir Requisitos y capacidades para expresar contratos entre diversos componentes. Se describen mediante metadatos y se aplican durante la ejecución. Los scripts agrupados utilizan este mecanismo para expresar tanto sus relaciones de herencia (sling:resourceSuperType
) como su delegación (incluidos otros tipos de recursos en el proceso de renderización).
El complemento bnd
del proyecto scriptingbundle-maven-plugin puede utilizarse para extraer los requisitos y las capacidades correspondientes a los scripts que ofrece el paquete de contenido ui.apps
.Paquete de contenido
Compatibilidad con archivos de proyectos AEM support
A partir de la versión 31, el tipo de archivos de proyectos AEM se puede utilizar para configurar correctamente un proyecto de AEM as a Cloud Service para utilizar scripts empaquetados precompilados.
Además, el tipo de archivos de proyectos AEM configura el complemento Maven del analizador de compilaciones de SDK de AEM as a Cloud Service para validar tanto las dependencias de nivel de paquete Java como las de nivel de script.