2013-02-19 20 views
1

我有一个部署独立OSGíApache ServiceMix应用程序的项目。它拥有大量的依赖关系,并且使用Maven构建。现在我想将这个应用程序部署到JBoss AS中。我找到一个叫做jboss-as-maven-pluginorg.jboss.as.plugins)的有趣Maven插件来部署任何东西。我使用maven-bundle-pluginorg.apache.felix)来构建我的包并且工作正常,但是当我部署项目包时,部署失败,因为不满足依赖关系。如何将Maven依赖关系自动部署到JBoss中作为OSGI捆绑包?

如何自动将所有依赖关系树与Maven目标进行绑定和部署?可能吗?我的项目有pom.xml上声明的几十个依赖关系,其中一些是我工作区中的其他项目。

+0

@Lucas Tycho与此问题无关。 – 2013-02-20 09:17:58

回答

1

目前我唯一知道的解决方案是Karaf功能。您可以create a feature file out of your pom dependencies

我发现jboss似乎支持​​。这可能有助于指定运行应用程序所需的软件包。它似乎不是OSGi子系统规范,但对于jboss来说,这可能已经有所帮助。对于OSGi规范5,有标准化的子系统规范可以提供跨容器执行此操作的标准方法。

如果jboss支持OBR(OSGi bundle repository),那么你可以限制你必须指定的依赖关系的数量。

+0

我已经使用了JBoss子系统,但是我没有用JBoss 7.1的问题(https://issues.jboss.org/browse/AS7-5544)显示我的目标,请参阅我的最新评论。 Karaf本身就是一个依赖项,因为我没有在JBoss中拥有一个配置良好的实例。我有很多问题来实现我的目标: - ((。谢谢你,我一直在尝试! – logoff 2013-02-20 11:53:41

+0

不是简单地使用Karaf作为服务器而不是JBoss吗? – 2013-02-20 15:31:58

+0

这是一个需要将我们的应用程序部署到JBoss 。我们必须同时支持独立的Apache ServiceMix(使用Apache Karaf)和JBoss部署。 – logoff 2013-02-22 09:47:15

0

如果您的应用程序没有使用OSGi,您可以考虑将应用程序打包为可在JBoss中部署的WAR。

然后,您需要使用web.xml来引导您的应用程序,例如使用Spring XML文件。

有一个骆驼例如,作为WAR这里:http://camel.apache.org/servlet-tomcat-example.html

+0

显然我们的应用程序使用OSGi,这就是我们选择Apache ServiceMix(和Apache Felix作为OSGi)的原因 容器)。我们的应用程序包含一组OSGi软件包和功能。 – logoff 2013-02-22 14:11:22

+0

是的,但你可以部署在OSGi容器中,不要使用任何OSGi服务,如osgi服务注册表或其配置管理服务等。如果不使用它,你可以在非OSGi容器中部署你的应用程序。 – 2013-02-22 15:52:23

+0

我们的应用程序使用服务注册表。实际上我们的应用程序密集使用OSGi服务。 – logoff 2013-03-04 10:18:07

0

您可以使用自动安装插件org.apache.sling你捆

  <plugin> 
       <groupId>org.apache.sling</groupId> 
       <artifactId>maven-sling-plugin</artifactId> 
       <executions> 
        <execution> 
         <id>install-bundle</id> 
         <goals> 
          <goal>install</goal> 
         </goals> 
        </execution> 
       </executions> 
       <configuration> 
        <slingUrl>http://localhost:8181/system/console/install</slingUrl> 
        <user>karaf</user> 
        <password>karaf</password> 
       </configuration> 
      </plugin> 

你可以找到从Adobe网站详细的pom.xml:https://docs.adobe.com/docs/en/cq/5-6-1/developing/developmenttools/how-to-build-aem-projects-using-apache-maven.html

http://www.cqblueprints.com/tipsandtricks/build-and-deploy-osgi/build-deploy-osgi-1.html

相关问题