How to remove jar file from local maven repository which was added with install:install-file?

mvn install:install-file -Dfile=phonegap-1.1.0.jar -DgroupId?=phonegap -DartifactId?=phonegap -Dversion=1.1.0 -Dpackaging=jar

I use above command to install local jar into maven local repo. Now I have got the dependency from maven repo. I want to remove this from local repo. How to clean it ?

183222 次浏览

如果使用的是 linux 操作系统,请删除本地 ~/.m2/repository/phonegap/1.1.0/目录下的所有内容(jar、 pom.xml 等)。

虽然您可以执行一个 maven 命令来完成这项工作,但是从存储库中手动地对文件进行 删除处理会更加容易。

就像 Windows Documents and Settings\your username\.m2或者 Linux 上的 $HOME/.m2

虽然手动删除文件可以工作,但是有一种 正式的方法可以从本地(缓存)存储库中删除依赖项 你的项目,并可选地从远程存储库中重新解析它们。

目标 purge-local-repository在标准 Maven 依赖项插件上,将从缓存中删除本地安装的依赖项 这个项目。您可以选择同时从远程存储库重新解析它们。

这应该作为项目阶段 的一部分使用,因为它适用于包含项目的依赖项。默认情况下,也会清除(本地)传递依赖关系。

如果希望从缓存中显式删除单个工件,请使用带有 manualInclude参数的 purge-local-repository。例如,从命令行:

mvn dependency:purge-local-repository -DmanualInclude="groupId:artifactId, ..."

文档暗示,默认情况下,这不会删除传递依赖关系。如果您使用非标准的缓存位置运行,或者在多个平台上运行,那么它们比“手动”删除文件更可靠。

完整的文档在 Maven 依赖性插件规范中。

注意 : 早期版本的专家 dependency插件有一个 manual-purge-local-repository目标,现在(版本2.8)暗示使用 manualIncludemanualIncludes(带有 s)的文档也应该阅读。

至少在当前的 maven 版本中,如果您打算删除本地回购中的依赖项而不重新下载它们,则需要添加开关 -DreResolve = false。

mvn dependency:purge-local-repository -DreResolve=false

删除依赖项而不再下载它们。

我遇到了同样的问题,仔细研究了上面的所有建议,但是没有一个奏效。 最后我删除了.m2和.ivy 文件夹,它对我很有用。