Incluir pacotes de terceiros em seu projeto AEM

Neste artigo, abordaremos as etapas envolvidas na inclusão do pacote OSGi de terceiros no seu projeto AEM. Para o propósito deste artigo, incluiremos o jsch-0.1.55.jar no nosso projeto AEM. Se o OSGi estiver disponível no repositório Maven, inclua a dependência do pacote no arquivo POM.xml do projeto.

NOTE
Pressupõe-se que o jar de terceiros seja um pacote OSGi
<!-- https://mvnrepository.com/artifact/com.jcraft/jsch -->
<dependency>
    <groupId>com.jcraft</groupId>
    <artifactId>jsch</artifactId>
    <version>0.1.55</version>
</dependency>

Se o pacote OSGi estiver em seu sistema de arquivos, crie uma pasta chamada localjar no diretório base do seu projeto (C:\aemformsbundles\AEMFormsProcessStep\localjar), a dependência será semelhante a

<dependency>
    <groupId>jsch</groupId>
    <artifactId>jsch</artifactId>
    <version>1.0</version>
    <scope>system</scope>
    <systemPath>${project.basedir}/localjar/jsch-0.1.55-bundle.jar</systemPath>
</dependency>

Criar a estrutura de pastas

Estamos adicionando este pacote ao nosso projeto AEM AEMFormsProcessStep que resida na c:\aemformsbundles pasta

  • Abra o filter.xml da pasta C:\aemformsbundles\AEMFormsProcessStep\all\src\main\content\META-INF\vault do seu projeto Anote o atributo raiz do elemento filter.

  • Crie a seguinte estrutura de pastas C:\aemformsbundles\AEMFormsProcessStep\all\src\main\content\jcr_root\apps\AEMFormsProcessStep-vendor-packages\application\install

  • A variável apps/AEMFormsProcessStep-vendor-packages é o valor do atributo raiz no filter.xml

  • Atualize a seção de dependências do POM.xml do projeto

  • Abra o prompt de comando. Acesse a pasta do projeto (c:\aemformsbundles\AEMFormsProcessStep), no meu caso. Execute o seguinte comando

mvn clean install -PautoInstallSinglePackage

Se tudo correr bem, o pacote será instalado junto com o pacote de terceiros na instância do AEM. Você pode verificar o pacote usando felix web console. O pacote de terceiros está disponível na pasta /apps do crx repositório como mostrado abaixo
terceiros

recommendation-more-help
8de24117-1378-413c-a581-01e660b7163e