EJB 3.1的Maven依赖[jboss-ejb-api_3.1_spec]

问题描述 投票:1回答:2

我关注了EJB 3.1上的一些教程,并且那些对EJB-API使用了以下依赖项。

    <dependency>
        <groupId>org.jboss.spec.javax.ejb</groupId>
        <artifactId>jboss-ejb-api_3.1_spec</artifactId>
        <version>1.0.2.Final</version>
    </dependency>

我的问题是,这只适用于jboss,或者我可以在任何其他应用程序服务器中使用它。如果不是为什么存在这样的依赖关系,这些依赖关系不是独立于应用程序服我也发现this reference为ejb 3.1 api。因此,请详细说明这些是什么以及为什么那些。

java maven java-ee jboss ejb-3.1
2个回答
2
投票

您可以在任何您喜欢的服务器上使用它。只需记住将<scope>provided</scope>标记添加到依赖项中,如下所示:

<dependency>
        <groupId>org.jboss.spec.javax.ejb</groupId>
        <artifactId>jboss-ejb-api_3.1_spec</artifactId>
        <version>1.0.2.Final</version>
        <scope>provided</scope>
</dependency>

provided范围意味着此依赖关系仅用于编译代码,而不包含在生成的EAR / WAR / JAR中。在运行时,此依赖项由应用程序服务器(JBoss,Websphere,无论如何)提供。如果省略范围规范部分,可能会发生非常糟糕的事情。


2
投票

干得好。这是来自EJB specs

<dependency>
    <groupId>javax.ejb</groupId>
    <artifactId>javax.ejb-api</artifactId>
    <version>3.2</version>
</dependency>

希望这可以帮助。

© www.soinside.com 2019 - 2024. All rights reserved.