找到丢失的Maven工件

mat*_*ewb 10 eclipse dependencies maven

我是Maven的新手,并且在添加依赖项方面苦苦挣扎.我正在尝试将现有项目转换为Maven,并在为我引用的库中的所有jar添加依赖项后,我收到有关缺少工件的错误消息:

Missing artifact stax:stax:jar:1.0    
Missing artifact clover:clover:jar:1.3-rc4
Missing artifact log4j:log4j:bundle:1.2.16
Missing artifact stax:stax-ri:jar:1.0
Run Code Online (Sandbox Code Playgroud)

从阅读这篇文章:如何处理Maven缺失的工件错误?,听起来我需要手动下载这些罐子并将它们添加到我当地的maven存储库中.我的问题是如何找到这些罐子?我试着谷歌搜索它们,我可以找到名称相似的罐子,但不完全像这些,所以我不确定它们是不是正确的罐子.

处理这个问题的任何提示?log4j jar是我原始项目的引用库中明确列出的唯一一个,所以我猜其他的jar是我需要的,我不知道在哪里找到它们或者它们的名字是什么应该.

谢谢!

mat*_*ewb 21

感谢大家的回复.问题的实际原因是,对于这3个缺失的工件中的每一个,由于某种原因,当Maven将它们下载到我的本地存储库时,.lastUpdated被附加到jar的末尾.例如,stax-1.0.jar.lastUpdated.这就是Maven无法找到stax-1.0.jar的原因.

因此,为了解决这个问题,我不得不手动下载stax-1.0.jar,然后将其安装到与乱搞文件完全相同的本地maven存储库中,以便Maven可以找到它.(例如,使用命令:

mvn install:install-file -Dfile=<path-to-file>/stax-1.0.jar         
-DgroupId=stax -DartifactId=stax -Dversion=1.0 -Dpackaging=jar
Run Code Online (Sandbox Code Playgroud)

使用与现有相同的groupId和artifactId,不正确的文件对于maven找到它至关重要.