本地REPO中的Maven依赖项具有.lastUpdated扩展名 [英] Maven dependencies in local REPO have .lastUpdated extension
问题描述
当我尝试在本地存储库中安装Maven项目时,我注意到pom
和jar
文件具有.lastUpdated
扩展名.由于这个问题,我无法建立依赖它的项目.
When I try to to install maven project in local repository, I notice that pom
and jar
files have .lastUpdated
extension. Because of this issue I cannot build my project which depends on it.
您能解释一下为什么会发生吗?
Could you please explain why it happens?
推荐答案
When an artifact is unable to be downloaded, Maven 3 caches this result for future reference in the "~/.m2/repo/.../.lastUpdated" file. For "not found" situations, it seems that the HTTP code could be used to more granularly re-attempt retrieval rather than just cache the failure. For example, for any 404, I agree, the result should cache the failure and require a -U to attempt to retrieve it again. However, for 400, 500, 501, 502, 503, 301, 302 (what's the Maven behavior for 3xx today?) I think the resolution engine should try to re-retrieve the artifact each time. With those error codes, it seems more likely a config issue or brief network hiccup, not one of the file being absent from that repo. However, that brief network hiccup has longstanding cache implications in that the file is never attempted to be retrieved again.
这篇关于本地REPO中的Maven依赖项具有.lastUpdated扩展名的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!