Maven(报错) 清理本地仓库

我正在 maven 项目目录中运行以下命令:

清理target

mvn clean -U

清理该项目依赖的本地仓库中的maven包

mvn dependency:purge-local-repository


它会删除(并重新下载?)我本地存储库中已存在的所有依赖项 那个特定的项目 (即我所在的目录)还是会删除 全部 我本地仓库的内容?

最佳答案

默认情况下, purge-local-repository 将从本地存储库中删除与其运行的项目的每个依赖项(包括传递)的版本相关联的所有文件:

Remove the project dependencies from the local repository, and optionally re-resolve them.


发挥作用的几个因素是:
  • 默认情况下,插件会清除传递依赖项;这可以通过 actTransitively 进行配置范围。
  • 默认情况下,所有从本地存储库中清除的 Artifact 都会重新解析;这可以通过 reResolve 进行配置范围。
  • 从本地存储库中清除的实际文件对应于与已清除 Artifact 的版本相关联的所有文件。例如,如果依赖项 foo:bar:1.0已清除,路径 foo/bar/1.0/* 下的所有文件将被移除。这可以通过 resolutionFuzziness 进行配置参数(其默认值为 version ):
  • artifactId 的值将清除被清除 Artifact 的 Artifact ID 路径下的所有文件。在上面的示例中,foo/bar/** 下的所有文件将被清除(因此,所有版本都被删除)。
  • groupId 的值将清除路径下的所有文件到要清除的 Artifact 的组 ID。在上面的示例中,foo/** 下的所有文件将被清除(因此,所有 Artifact ID 的所有版本都将被删除)。
  • file 的值只会清除正在清除的 Artifact 的文件。在上面的例子中,只有文件 bar-1.0.jar*将被删除(这包括他们可能拥有的任何 sha1)。它不会清除关联的 POM 文件。
  • 您可以通过使用 list 打印项目的所有依赖项列表来查看将要清除哪些 Artifact 。目标:
    mvn dependency:list
    可选地添加 excludeTransitive 到此命令,如果您决定不清除传递依赖项。

演示:

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

贫坤户~濰小城

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值