通过maven

时间:2016-04-05 06:24:55

标签: java maven osgi cq5 aem

我正在开发osgi包并将其部署到adobe AEM。

我有两个项目,都是OSGI包

  1. 主要项目
  2. 工具包项目
  3. 我已将工具包项目添加为主项目pom中的maven依赖项,这是我想要实现的目标:

    当我部署主项目时,使用maven插件将bundle部署到AEM,我也希望在部署主项目时部署依赖包(toolkit)。

    有办法做到这一点吗?

    谢谢!

1 个答案:

答案 0 :(得分:2)

存储在/apps/[your-project]/install下的任何OSGi包都将自动部署到AEM。

您可以在CRX包中使用许多Maven插件,以便在构建时将依赖项复制到其中。

一个例子是Adobe自己的content-package-maven-plugin。要将JAR复制到内容包中,请在the AEM docs的POM中使用以下语法:

<plugin>
    <groupId>com.day.jcr.vault</groupId>
    <artifactId>content-package-maven-plugin</artifactId>
    <version>0.0.24</version>
    <extensions>true</extensions>
    <configuration>
        <filters>
            <filter>
                <root>/apps/myapp</root>
            </filter>
         </filters>
         <embeddeds>
            <embedded>
                <groupId>[toolkit-groupID]</groupId>
                <artifactId>[toolkit-artifactID]</artifactId>
                <target>/apps/[your-project]/install</target>
             </embedded>
         </embeddeds>
     </configuration>
</plugin> 

(正常情况下,JAR本身也需要列为该项目的依赖项)