[英]Maven error on dependency: missing artifact
昨天我问了这个问题,事实证明这是一个Maven问题。 尽管我能够找到一种解决方法(与Geronimo而不是Java JMS一起使用),但我无法弄清Java JMS解决方案为何无法正常工作。
我不喜欢重复问题,但我不认为这是一个骗子,因为它是一个完全不同的原始问题。
因此,我正在尝试使JMS与我的应用程序一起使用,以便可以将消息推送到本地队列。 在我的Maven pom.xml
,添加以下依赖项声明:
<dependencies>
<dependency>
<groupId>javax.jms</groupId>
<artifactId>jms</artifactId>
<version>1.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
马上,( 使用Eclipse )得到一个(红色)突出显示的错误,指出:
缺少工件javax.jms:jms:jar:1.1
当我用另一个JMS API(例如Geronimo)替换它时,错误消失了。 参考(Java)JMS依赖关系是否有问题? 还是沙箱中配置错误?
您可以在http://mvnrepository.com/artifact/javax.jms/jms的 maven存储库浏览器中看到工件的大小为0字节。 似乎对该工件有一些问题或特殊策略。
jms 1.1 jar在默认的maven存储库中不可用-您需要添加对其他公共存储库之一的引用(例如,jboss一个)
该错误可能是由于log4j可传递依赖项引起的。 您可以按如下所示排除此类依赖项。
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
<exclusions>
<exclusion>
<artifactId>jms</artifactId>
<groupId>javax.jms</groupId>
</exclusion>
<exclusion>
<artifactId>jmxri</artifactId>
<groupId>com.sun.jmx</groupId>
</exclusion>
<exclusion>
<artifactId>jmxtools</artifactId>
<groupId>com.sun.jdmk</groupId>
</exclusion>
</exclusions>
</dependency>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.