亚马逊aws文物无法解决

时间:2013-12-23 22:19:04

标签: maven amazon-web-services amazon-s3

我正在使用Linux系统。

我的本地maven repo 目录/Users/username/.m2/repository/我有以下目录:

com/amazonaws/android/core/amazon-aws-android-core/1.6.1

这意味着目录的完整路径是:

/Users/username/.m2/repository/com/amazonaws/android/core/amazon-aws-android-core/1.6.1

上面的目录,我有文件:

amazon-aws-android-core-1.6.1.jar.lastUpdated   
amazon-aws-android-core-1.6.1.pom.lastUpdated

在我的项目中,我的pom.xml包含:

<dependency>
    <groupId>com.amazonaws.android.core</groupId>
    <artifactId>amazon-aws-android-core</artifactId>
    <version>1.6.1</version>
    <type>jar</type>
</dependency>

但是当我运行mvn clean install时,我总是收到以下错误消息

The following artifacts could not be resolved: com.amazonaws.android.core:amazon-aws-android-core:jar:1.6.1

为什么我会收到上述错误&amp;如何摆脱它?

2 个答案:

答案 0 :(得分:2)

您收到上述错误,因为实际的.jar文件不在您的存储库中。 .lastUpdated文件不是实际的.jar文件,也不是它们的最新更新版本。 .lastUpdated文件只是簿记文件。

例如,让我们创建一个无意义的依赖项:

<dependency>
    <groupId>asdfasdf</groupId>
    <artifactId>sadffweklsfduasfsdjf</artifactId>
    <version>1.0</version>
</dependency>

并在其上运行mvn install

Maven然后创建目录~/.m2/repository/asdfasdf/sadffweklsfduasfsdjf/1.0并使用sadffweklsfduasfsdjf-1.0.jar.lastUpdatedsadffweklsfduasfsdjf-1.0.pom.lastUpdated文件填充它。

在其中一个.lastUpdated文件中,您只需找到类似的内容:

1 #NOTE: This is an Aether internal implementation file, its format can be ch    anged without prior notice.
2 #Fri Jan 03 09:12:05 IST 2014
3 http\://repo.maven.apache.org/maven2/.lastUpdated=1388733125394
4 http\://repo.maven.apache.org/maven2/.error=

而不是实际的.jar或.pom文件。

要消除此错误,您需要确保Maven实际上能够访问远程存储库并下载您需要的实际Amazon AWS jar。

答案 1 :(得分:1)

.lastUpdated文件是元数据文件,而不是实际的jar和pom。这种情况表明您可能在没有连接到网络的情况下尝试下载这些内容,或者当repo不可用时,现在Maven将不再尝试再次下载这些内容,直到超过一定的时间。您可以将-U开关添加到命令中以强制检查远程存储库上的更新版本。您也可以从本地存储库中删除该工件的文件夹,这也会导致Maven再次尝试下载它。

这里有一个类似的问题: Maven downloads have .lastUpdated as extension 和这里 Maven dependencies in local REPO have .lastUpdated extension

这里有一些关于lastUpdated文件的讨论: http://maven.40175.n5.nabble.com/Maven-3-maven-repositories-and-lastUpdated-td4927537.html

相关问题