Java 如何从本地Maven存储库中删除工件版本

Java 如何从本地Maven存储库中删除工件版本,java,maven,gradle,Java,Maven,Gradle,假设我有一个存储库,它有两个版本:1.1和1.2: com/mycomp/myproj/1.1/ com/mycomp/myproj/1.2/ com/mycomp/myproj/maven-metadata.xml 最新文件内容: <?xml version="1.0" encoding="UTF-8"?> <metadata> <groupId>com.mycomp</groupId> <artifactId>myproj

假设我有一个存储库,它有两个版本:1.1和1.2:

com/mycomp/myproj/1.1/
com/mycomp/myproj/1.2/
com/mycomp/myproj/maven-metadata.xml
最新文件内容:

<?xml version="1.0" encoding="UTF-8"?>
<metadata>
  <groupId>com.mycomp</groupId>
  <artifactId>myproj</artifactId>
  <versioning>
    <release>1.2</release>
    <versions>
      <version>1.1</version>
      <version>1.2</version>
    </versions>
    <lastUpdated>20180606133322</lastUpdated>
  </versioning>
</metadata>

com.mycop
myproj
1.2
1.1
1.2
20180606133322

是否有一种工具或方法可以删除版本1.2并将maven-metadata.xml更改为不需要手动编辑文件而不声明它?我研究了mvn命令,但它似乎只适用于maven项目,而我的maven存储库由gradle with maven plugin填充。

默认情况下,您的本地maven repo位于$HOME/.m2/repository,所以只需进入文件系统并清除文件夹即可

$HOME/.m2/repository/com/mycomp/myproj/1.2/
您还可以吹走maven-metadata.xml文件,它在每次执行操作时都会重新创建

mvn clean install.

谢谢你的建议。你是对的,我可以删除1.2文件夹。但是如果我删除maven-metadata.xml,然后推出一个带有“/gradle uploadArchives”的新版本(请记住,我没有maven项目,只有gradle项目),但是在这种情况下,重新创建的maven-metadata.xml将不再包括1.1版,尽管文件夹1.1仍然存在。因此,我正在寻找一种更智能的方法来删除该版本,该版本将为我自动调整maven-metadata.xml。我知道我最终会自己写这个工具,though@LeonidYurchenko不管怎样,格雷德尔都在暗中使用maven。您可以在~/.m2/repository下快速和松散地删除目录,maven/gradle将根据需要重新创建它们。把它想象成一个缓存。如果你高兴,你会接受我的回答吗,谢谢。