是否存在包含所有JBOSS运行时jar的maven JBOSS依赖项?

时间:2012-08-17 13:30:09

标签: maven jboss

我有一个maven应用程序将作为战争部署到JBOSS 5.1。我想知道如何获取它以便Maven可以在编译时使用JBOSS 5.1 jar(即common / lib文件夹中的所有jar以及运行时JBOSS可用的任何其他资源),但不将它们捆绑到war文件中。

我认为我可以在提供范围内包含某种JBOSS依赖项来执行此操作但是我找不到这样的依赖项。我做了很多搜索,并没有真正找到这样的依赖。有许多引用指向中央JBOSS存储库并从中拉出依赖项。我认为只有一个全局依赖包括所有JBOSS运行时jar。 Os有这样的事吗?

2 个答案:

答案 0 :(得分:3)

如果您需要的不仅仅是JBoss软件包等标准Java EE API或解决某些兼容性问题,您可以使用此依赖项:

适用于JBoss / Java EE 7规范API

<dependency>
    <groupId>org.jboss.spec</groupId>
    <artifactId>jboss-javaee-7.0</artifactId>
    <version>1.0.1.Final</version>
    <type>pom</type>
    <scope>provided</scope>
</dependency>

适用于JBoss / Java EE 6规范API

<dependency>
    <groupId>org.jboss.spec</groupId>
    <artifactId>jboss-javaee-6.0</artifactId>
    <version>3.0.2.Final</version>
    <type>pom</type>
    <scope>provided</scope>
</dependency>

对于JBoss WildFly 8.2.0.Final完整的运行时依赖

<dependency>
    <groupId>org.wildfly</groupId>
    <artifactId>wildfly-parent</artifactId>
    <version>8.2.0.Final</version>
    <type>pom</type>
    <scope>provided</scope>
</dependency>

现在,您还可以使用这些POM文件来提取所需的特定依赖项。

这在远程调试时非常有用,可让您的IDE自动解析当前加载的服务器依赖项jar和源,或者在开发模式下出现在stacktraces ......中。

在生产MAVEN版本中,您可能只需要这种配置(取决于您的JBoss版本): http://www.mastertheboss.com/jboss-server/wildfly-8/maven-configuration-for-java-ee-7-projects-on-wildfly

答案 1 :(得分:2)

考虑到JBoss是一个EE容器,添加JavaEE依赖就足够了。

<dependency>
    <groupId>javax</groupId>
    <artifactId>javaee-api</artifactId>
    <version>6.0</version>
    <scope>provided</scope>
</dependency>

提供的作用域确保在将应用程序部署到服务器后使用JBoss自己的库。