javax.jms。*类的正确Maven依赖关系是什么?

我需要导入javax.jms.*类。 什么是正确的依赖包含到Maven项目中? 我试图javax.jms:jms:1.1 ,但没有运气(这是POM,而不是jar子)。

PS。 目前唯一的解决方法是: javax:javaee-api:6.0 (来自Maven Central)。

在activemq中,我们从Apache Geronimo中引入jms规范类

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

Sun许可证不允许Maven存储库托pipe此(和其他)工件。

这里是文件解释这个,你应该做什么,而不是…

Maven – 应对Sun JAR的指南

它说的是你需要手动下载JAR,然后把它安装到你自己的本地仓库或者nexus服务器上。

在maven中心托pipe这些工件的pom.xml文件包含有关您可以从哪里下载JAR的信息。

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

我已经成功地使用了这个:

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

转到Maven Search站点并searchjavax。 打开groupId javax和artifactId javaee-api的最新版本

当前版本是7.0 [ Maven依赖信息 ]

查看grepcode.com上列出的依赖关系。
我只是最近才发现这个网站,而且很有趣!

http://grepcode.com/search/?query=javax.jms。*

它看起来像maven中央的Geronimojar子应该排除你的问题。

根据mvnrepository,添加到项目的pom中的依赖项如下所示:

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

如果您只想要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>