javax.jms. * 类的正确Maven依赖项是什么?

hc8w905p  于 5个月前  发布在  Maven
关注(0)|答案(9)|浏览(67)

我需要导入javax.jms.*类。Maven项目中应该包含什么样的依赖项?我正在尝试javax.jms:jms:1.1,但没有成功(它是pom,不是jar)。
ps.到目前为止我找到的唯一解决方法是:javax:javaee-api:6.0(来自Maven Central)。

pgx2nnw8

pgx2nnw81#

在ActiveMQ以及其他一些项目(如Qpid JMS)中,我们从Apache Geronimo JAR中提取JMS规范类,1.1 API在此依赖项中可用:

<dependency>
    <groupId>org.apache.geronimo.specs</groupId>
    <artifactId>geronimo-jms_1.1_spec</artifactId>
    <version>1.1.1</version>
  </dependency>

字符串
例如,对于JMS2API,您需要使用不同的依赖项

<dependency>
    <groupId>org.apache.geronimo.specs</groupId>
    <artifactId>geronimo-jms_2.0_spec</artifactId>
    <version>1.0-alpha-2</version>
  </dependency>


这些都是Apache 2.0许可的依赖项。
现在已经转移到JMS规范的Jakarta API版本,JMS API jar的选项也发生了变化。
基本的Jakarta JMS 2.0 API(与旧版JMS 2.0 API兼容的API)可以在这里找到。

<dependency>
   <groupId>jakarta.jms</groupId>
   <artifactId>jakarta.jms-api</artifactId>
   <version>2.0.3</version>
</dependency>


3.x系列中的新Jakarta Messaging API可以从这里引入,ActiveMQ 6.0+代理已经迁移到Jakarta:

<dependency>
    <groupId>jakarta.jms</groupId>
    <artifactId>jakarta.jms-api</artifactId>
    <version>3.1.0</version>
</dependency>


正如其他人所指出的那样,另一个不是Apache许可的选项在这里。

<dependency>
    <groupId>javax.jms</groupId>
    <artifactId>javax.jms-api</artifactId>
    <version>2.0.1</version>
</dependency>

kyks70gy

kyks70gy2#

Sun许可证不允许maven存储库托管此(和其他)工件。
以下是解释这一点的文档以及您应该做的事情.
Maven - Guide to coping with Sun JARs
它说的是,你需要手动下载这个插件,然后将它安装到你自己的本地存储库或Nexus服务器上。
在maven中心为这些工件托管的pom.xml文件包含了有关可以从哪里下载JAR的信息。

wgmfuz8q

wgmfuz8q3#

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

字符串

s6fujrry

s6fujrry4#

我成功地使用了这个:

<dependency>
    <groupId>javax.jms</groupId>
    <artifactId>jms</artifactId>
    <version>1.1</version>
</dependency>

字符串

tyky79it

tyky79it5#

转到Maven Search site并搜索javax。打开groupId javax和artifactId javaee-api的最新版本
当前版本为7.0 [Maven依赖信息]

cwdobuhd

cwdobuhd6#

如果你只需要JMS库,而不需要javaee的其余部分,请使用以下命令:
https://mvnrepository.com/artifact/javax.jms/javax.jms-api/2.0.1

<dependency>
    <groupId>javax.jms</groupId>
    <artifactId>javax.jms-api</artifactId>
    <version>2.0.1</version>
</dependency>

字符串

lyfkaqu1

lyfkaqu17#

根据mvnrepository,要在项目的pom中添加的依赖项如下:

<dependency>
  <groupId>jms</groupId>
  <artifactId>jms</artifactId>
  <version>1.1</version>
</dependency>

字符串

vsnjm48y

vsnjm48y8#

查看grepcode.com上列出的依赖项。
我最近才发现这个网站,它很棒!
http://grepcode.com/search/?query=javax.jms .*
看起来maven central上的Geronimo jar应该可以解决您的问题。

de90aj5v

de90aj5v9#

这对我很有效

<dependency>
        <groupId>javax.jms</groupId>
        <artifactId>javax.jms-api</artifactId>
        <version>2.0.1</version>
    </dependency>

字符串

相关问题