Maven找不到Axis2 1.6.4或更高版本

use*_*155 5 axis2 maven

这里清晰可见,Axis 2 Maven依赖项有几个版本高于1.6.3版本.但是,当我在Eclipse中构建(实际上当我编辑并保存我的pom.xml)时,它们都无法下载.我有一个java 8项目和版本1.5.4到1.6.3所有工作.当我将它们添加到我的pom.xml中时,它们会自动出现在我的maven依赖项中.当我尝试1.6.4 - 1.7.3之间的任何版本时,我的pom.xml中出现了一个缺失的工件错误,就像它们在中央存储库中找不到一样.

在此输入图像描述

在此输入图像描述

我使用Eclipse Mars的嵌入式Maven 3.3.可能是它链接到一个不包含ne版本的过时的存储库?如何将其连接到另一个存储库(我已经检查了Preferences/Maven以设置此属性但未找到它).另外,什么是一个好的"中央"存储库?

Lit*_*nti 12

此错误不是您所了解的:

将鼠标移到红色下划线上(或转到"标记"选项卡)并阅读错误消息:

Missing artifact org.apache.axis2:axis2:jar:1.6.4
Run Code Online (Sandbox Code Playgroud)

意识到Maven正在尝试使用以下坐标下载这样的工件:groupId = org.apache.axis2,artifactId = axis2,version = 1.6.4,type = jar

......从版本1.6.4开始,工件axis2不再是JAR,而是POM.所以你只需要覆盖默认的类型坐标:

    <dependency>
        <groupId>org.apache.axis2</groupId>
        <artifactId>axis2</artifactId>
        <version>1.6.4</version>
        <type>pom</type>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

(或者,使用JAR包装声明另一个更具体的工件:axis2-kernel,axis2-adb等)

建议:在Central Repository中查看此搜索,并了解一些依赖项如何具有JAR工件,而其他一些只具有POM.

  • 所以默认情况下maven会尝试下载一个jar。为什么 maven 不够聪明,无法意识到如果 jar 不存在,他应该尝试唯一的其他选择,即 pom? (2认同)