Maven 2 java.net maven repo-缺少JMS工件

Maven 2 java.net maven repo-缺少JMS工件,maven-2,jar,repository,jms,Maven 2,Jar,Repository,Jms,我刚刚使用默认原型创建了一个新的Maven项目,并将以下依赖项添加到我的POM文件中 <dependencies> <dependency> <groupId>javax.jms</groupId> <artifactId>jms</artifactId> <version>1.1</version> <scope>compile</scope&g

我刚刚使用默认原型创建了一个新的Maven项目,并将以下依赖项添加到我的POM文件中

<dependencies>
  <dependency>
    <groupId>javax.jms</groupId>
    <artifactId>jms</artifactId>
    <version>1.1</version>
    <scope>compile</scope>
  </dependency>
</dependencies>

javax.jms
jms
1.1
编译
意识到由于许可问题,Sun的JAR不在Maven central上,我补充道 以下是我的POM中的Maven repo(我知道这是一种糟糕的做法,需要将其添加到settings.xml中)


回购ID
违约
Java.net Maven回购协议
真的
http://download.java.net/maven/2/
我仍然在POM文件中看到此错误

“缺少工件javax.jms:jms:jar:1.1:compile”

这里有人知道除了我已有的配置之外还需要做什么吗

意识到由于许可问题,Sun的JAR不在Maven central上,我补充道 以下是我的POM的Maven回购

是的,但是没有jms工件

好消息是JBoss Nexus存储库中确实有:

<repository>
  <id>repository.jboss.org-public</id>
  <name>JBoss repository</name>
  <url>https://repository.jboss.org/nexus/content/groups/public</url>
</repository>

repository.jboss.org-public
JBoss存储库
https://repository.jboss.org/nexus/content/groups/public

如果您只想要jms工件,而不想添加整个回购,可以执行以下操作:

wget https://repository.jboss.org/nexus/content/groups/public/javax/jms/jms/1.1/jms-1.1.jar
mvn -e install:install-file -Dfile=./jms-1.1.jar -DartifactId=jms -DgroupId=javax.jms -Dversion=1.1 -Dpackaging=jar

事实上,这个问题的真正解决方案是使用Maven Central上提供的jms-api-1.1-rev-1.jar工件:

您知道是否有用于jms的source和javadoc jar/poms?显然JBoss只有二进制JAR。如果在添加repo后收到消息“没有可用于访问存储库java.net的连接器”,那么问题是您使用的是Maven3,它与Maven2 repo不兼容。您可以降级或添加例外:谢谢。实际上,这个解决方案为我解决了这个问题。我试图构建SpringRCP1.1.0,但由于上述错误而失败。你的解决方案成功了。感谢+1如果您在一个更大的组织中,您最好安装一个定制的Maven存储库,这样您的构建也可以在本地计算机之外进行复制。甚至对于JMS-API 2.0,也存在以下问题和工件:
wget https://repository.jboss.org/nexus/content/groups/public/javax/jms/jms/1.1/jms-1.1.jar
mvn -e install:install-file -Dfile=./jms-1.1.jar -DartifactId=jms -DgroupId=javax.jms -Dversion=1.1 -Dpackaging=jar