首页 文章

强制maven更新

提问于
浏览
584

我在其他计算机上导入了我的工作项目,因此它开始下载依赖项 .

显然在此期间我的互联网连接崩溃了 . 现在我得到:

为漫画构建错误; org.apache.maven.lifecycle.LifecycleExecutionException:无法在项目漫画上执行目标测试:无法解析项目漫画的依赖项测试:漫画测试:war:0.0.1-SNAPSHOT:无法解析以下工件:org.springframework:spring- context:jar:3.0.5.RELEASE,org.hibernate:hibernate-entitymanager:jar:3.6.0.Final,org.hibernate:hibernate-core:jar:3.6.0.Final,org.hibernate:hibernate-commons-注释:jar:3.2.0.Final,org.aspectj:aspectjweaver:jar:1.6.8,commons-lang:commons-lang:jar:2.5,mysql:mysql-connector-java:jar:5.1.13:失败转移org.springframework:spring-context:jar:3.0.5.RELEASE来自http://repo1.maven.org/maven2缓存在本地存储库中,在中心的更新间隔过去或更新之前,不会重新尝试解析被迫 . 原始错误:无法传输工件org.springframework:spring-context:jar:3.0.5.RELEASE from central(http://repo1.maven.org/maven2):60000后没有收到回复

我不知道如何强制maven更新?

21 回答

  • 40
    mvn clean install -U
    

    -U 表示强制更新快照依赖项 . 发布依赖项无法以这种方式更新 .

  • -1

    -U似乎强制更新所有依赖项 . 如果要更新单个依赖项而不使用clean或-U,可以将其从本地存储库中删除,然后进行构建 . 以下示例如果更新slf4j-api 1.7.1-SNAPSHOT:

    rm -rf ~/.m2/repository/org/slf4j/slf4j-api/1.7.1-SNAPSHOT
    mvn compile
    
  • 2

    如果您的本地存储库以某种方式被释放为发布jar而不是快照( -U--update-snapshots 仅更新快照),则可以使用以下方法清除本地存储库:

    mvn dependency:purge-local-repository
    

    您可能希望再次清理并安装:

    mvn dependency:purge-local-repository clean install
    

    有关更多信息,请访问https://maven.apache.org/plugins/maven-dependency-plugin/examples/purging-local-repository.html

  • 2

    你可以从 Eclipse IDE 有效地做到 . 当然,如果你正在使用它 .

    Project_Name->Maven->Update Project Configuration->Force Update of Snapshots/Releases
    
  • 7

    这里的所有答案都不适用于我 . 我用锤子方法:

    find ~/.m2/ -name "*.lastUpdated" | xargs rm
    

    这解决了问题:-)

  • 0

    以防万一有人只想更新项目的快照依赖项并且不想安装工件:

    mvn dependency:resolve -U
    

    不要忘记在IDE中重新导入依赖项 . 在IDEA中,您需要右键单击pom文件并选择Maven - > Reimport

  • 54

    如果您不确定本地存储库中的内容,我建议使用以下选项触发构建:

    -Dmaven.repo.local=localrepo
    

    这样你就可以确保 Build 一个洁净室环境 .

  • -3

    在我的情况下,我首先做了
    mvn clean install -U
    仍然它显示相同的错误然后我关闭项目和agian重新打开它 . 最后工作 .

  • 1

    我在其他情况下得到了错误 . 因此,我的解决方案可能对其他能够解决问题的人有用:

    问题:我已将本地存储库复制到另一台计算机,该计算机与特殊存储库没有任何关联 . 所以maven试图针对无效的存储库检查工件 .

    我的解决方案:删除_maven.repositories文件 .

  • 17

    这是Maven最讨厌的事情之一 . 对我来说,会发生以下情况:如果我添加一个请求更多依赖项的依赖项,但是连接速度越来越慢,它会在下载和超时时停止接收 . 虽然超时所有尚未获取的依赖项都在.m2缓存中用占位符标记,但Maven不会(从不)拾取它,除非我通过删除缓存中的占位符条目(如其他所述) .

    因此,就我所知,Maven或更精确的Eclipse Maven插件有一个关于此的错误 . 有人应该报告这个 .

  • 38

    您需要检查 <maven_home>/conf 目录下的settings.xml文件 .

  • -4

    我对android-maps-utils依赖有同样的错误 . 在依赖部分中使用aar类型包来解决我的问题 . 默认情况下,type是jar,因此可以检查下载存储库中的依赖项类型 .

  • 9

    要从Eclipse修复此问题:

    1)在Maven pom.xml中添加以下依赖项并保存pom.xml文件 .

    <!-- https://mvnrepository.com/artifact/com.thoughtworks.xstream/xstream -->
    <dependency>
        <groupId>com.thoughtworks.xstream</groupId>
        <artifactId>xstream</artifactId>
        <version>1.3.1</version>
    </dependency>
    

    2)转到项目>> Maven >>更新项目

    选择项目,然后单击“确定” .

    3)可选步骤,如果在步骤2之前没有解决,则在执行步骤1之后执行下面的步骤

    转到项目>> Maven >>更新项目>>选中“强制更新快照/版本”复选框

    选择项目,然后单击“确定” .

  • 2

    重要的是要添加主要内容运行 mvn with -Uwithout -U 的区别在于 -U 将覆盖带有远程SNAPSHOT jar 的本地SNAPSHOT jar .

    如果您有proj的其他模块生成jar,则从本地 mvn install 创建本地SNAPSHOT jar .

  • -2

    -U用于强制更新maven Repo . 使用

    mvn -U clean install
    
  • 70

    如果您使用 eclipse IDE 则:

    • 选择项目 .

    • 按alt F5,将弹出更新Maven项目的窗口 .

    • 检查 - 强制更新快照/版本,然后单击“确定” .

  • 1

    我出于另外的原因遇到了这个问题 . 我去了maven资源库https://mvnrepository.com寻找最新版本的spring core,当时是5.0.0.M3 /存储库向我展示了我的pom.xml的这个条目:

    <!-- https://mvnrepository.com/artifact/org.springframework/spring-core -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>5.0.0.M3</version>
    </dependency>
    

    天真傻瓜,我,我认为评论告诉我,jar位于默认存储库中 .

    然而,经过大量的敲击之后,我在xml下面看到一条说明“注意:这个工件位于Alfresco公共存储库(https://artifacts.alfresco.com/nexus/content/repositories/public/)”

    所以XML中的注释完全是误导性的 . jar位于另一个存档中,这就是为什么Maven找不到它!

  • -3

    我最近遇到了这个并运行以下修复了所有问题

    mvn -fae install
    
  • 1380

    我们可以使用以下命令强制获取发布和快照存储库的最新更新:

    mvn --update-snapshots clean install
    
  • 0

    我有同样的错误并运行 mvn install -U 然后运行 mvn install 为我工作 .

  • 0

    mvn clean install -U 不起作用 . 但是 mvn -U clean 后跟 mvn clean install 呢 .

相关问题