使用maven的项目的JBOSS依赖项

时间:2012-09-13 10:30:21

标签: java-ee maven jboss jboss5.x

这应该很简单,但无法弄清楚。我有一个使用Maven构建的Web项目,将部署在JBOSS-EAP 5.1服务器上。我将什么添加到我的pom.xml中,以便Maven在构建时可以访问JBOSS EAP库?

我可以使用特定的依赖项或插件吗?

5 个答案:

答案 0 :(得分:2)

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

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

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

答案 1 :(得分:1)

您必须首先确定您的项目依赖项究竟是什么,并将它们作为依赖项添加到pom.xml中。现在识别jboss可用的所有内容,并将这些依赖项的范围设为<scope>provided</scope>,以便它不与war捆绑在一起。在构建期间,maven将不得不从maven存储库中获取jar。

答案 2 :(得分:1)

AFAIK这是EAP 6的一项功能,甚至是实验性的。请参阅herehere的详细信息:

  

以前版本的一个宏伟的改进是,EAP 6   附带Maven存储库,其中包含所有与EAP相关的Maven   文物。丢失的maven存储库是一个很大的缺点   以前的EAP版本。所需的Maven工件必须是手动的   从EAP发行版部署到您自己的本地Maven   存储库或您的企业Maven存储库,如Nexus或   artifactory的。

所以不,我不认为Jboss EAP 5.X存在这样的存储库。

这意味着在实践中,您有以下选择,从大多数建议到最少:

  • 拥有内部网络存储库,例如Nexus或Artifactory,并在那里安装项目。然后你可以将它们称为pom中的依赖项。建议使用此选项。
  • 仅将本地安装到每个开发人员本地maven仓库中。你可以使用mvn install-file,每个开发人员都需要自己完成。之后,每个依赖项都可以通过其他依赖项的方式从pom引用。
  • 在您的pom上使用系统范围,直接指向存储在硬盘驱动器上的库。这将是一个脆弱的设置,容易打破。

将库存储在Intranet存储库中并使用它应该不会太难。为开发人员提供Intranet repo是您应该使用的最佳实践。

答案 3 :(得分:0)

以下是OP erroneously included in the question

的答案

我最后做的是将以下依赖项添加到我的pom中:

    <dependency>
        <groupId>javax.j2ee</groupId>
        <artifactId>j2ee</artifactId>
        <version>1.5</version>
        <scope>provided</scope>
    </dependency>

不能直接回答我的问题(我特意询问了JBOSS),但它为我提供了编译所需的所有Java EE API。我无法运行任何使用它的东西,因为它没有实现任何API - 这是由我的Java EE应用服务器(在这个例子中为JBOSS)提供的。

答案 4 :(得分:0)

Jboss 软件包现在(以及几年)在

def get_frame(self):
    ret, frame = self.capture.read()
    if ret:
        image = QtGui.QImage(
            frame, *frame.shape[1::-1], QtGui.QImage.Format_RGB888
        ).rgbSwapped()
        pixmap = QtGui.QPixmap.fromImage(image)
        self.label.setPixmap(pixmap)