Maven仓库无用文件和文件夹清理的方法实现

众所周知,随着经济社会的发展,我们的物质生活…不好意思,走错片场了…

今天来分享一个实用的代码…

大家都知道我们在使用Maven的时候,都会下载一堆依赖jar包,但是有时候因为网络问题,会下载一堆无用非jar文件。另外还有许多自己本地打包的无效版本等

下面使用代码将Maven仓库中的无用文件夹和不完整的jar包的版本统统删掉

先贴一个效果,如下图👇

public class Test {

// 仓库根目录
static String root = "你的maven仓库根目录";

public static void main(String[] args) {

  File file = new File(root);

  File[] _files = file.listFiles();
  if (_files != null && _files.length > 0) {
    for (File _file : _files) {
      validate(_file);
    }
  }

}

public static boolean validate(File file) {
  boolean isHaveJar = false;
  File[] _files = file.listFiles();
  if (_files != null && _files.length > 0) {
    // 判断是否有*jar 是否是有文件夹
    for (File _file : _files) {
      if (_file.getName().endsWith(".jar")) {
        isHaveJar = true;
      }
      if (_file.isDirectory()) {
        boolean isNextHaveJar = validate(_file);
        if (isNextHaveJar) {
          isHaveJar = true;
        }
      }
    }
  }
  if (!isHaveJar) {
    delete(file);
  }
  return isHaveJar;
}

public static void delete(File file) {
  File[] _files = file.listFiles();
  if (_files != null && _files.length > 0) {
    for (File _file : _files) {
      if (_file.isDirectory()) {
        delete(_file);
      }
      _file.delete();
    }
  } else {
    file.delete();
  }
}
}

到此这篇关于Maven仓库无用文件和文件夹清理的方法实现的文章就介绍到这了,更多相关Maven仓库清理内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 清理本地Maven仓库的方法示例

    1.清理target mvn clean -U 2.清理该项目依赖的本地仓库中的maven包 mvn dependency:purge-local-repository 这个命令会清理pom.xml中的包,并重新下载,但是并不清理不在pom.xml中的依赖包. 下面的扩展: mvn dependency:purge-local-repository -DreResolve=false reResolve是否重新解析依赖关系 mvn dependency:purge-local-repositor

  • Maven仓库无用文件和文件夹清理的方法实现

    众所周知,随着经济社会的发展,我们的物质生活-不好意思,走错片场了- 今天来分享一个实用的代码- 大家都知道我们在使用Maven的时候,都会下载一堆依赖jar包,但是有时候因为网络问题,会下载一堆无用非jar文件.另外还有许多自己本地打包的无效版本等 下面使用代码将Maven仓库中的无用文件夹和不完整的jar包的版本统统删掉 先贴一个效果,如下图

  • 如何处理maven仓库中后缀LastUpdated文件

    一.背景 新做了一个的需求,需要在SpringBoot项目中引入了多个依赖,然后就感觉idea下载依赖包的时间很漫长,然后我就网上找了解决办法--使用国内的阿里云镜像,后来呢,就出现了这个问题.删除该文件也未曾生效,依然会重新生成. 二.产生的原因 原来每次在更新maven项目的时候,每一个jar包路径下的_remote.repositories文件都会同setting.xml中设置的仓库地址id进行判断,如果没有匹配,会自动更新该jar包的相关文件,如果未联网则会出现jar无法发现的错误,导致

  • 一键清除maven仓库中下载失败的jar包的实现方法

    typora-copy-images-to: ./ 一键清除maven仓库中下载失败的jar包 maven是一款非常优秀的项目管理工具,特别是其对项目使用的依赖包的管理,我们只需在pom.xml文件中配置响应的依赖,其就可以帮助我们自动下载所需要的jar包 1.问题来源: 很多时候,maven工具帮我们下载jar包的时候,由于种种原因,或断电.或蓝屏.或工具抽风等等等等情况导致我们下载jar包失败,但此时工具已经在我们的maven仓库中创建了一个jar包文件夹了,但是这个jar包是不完整的,也就

  • android studio git 删除已在远程仓库的文件或文件夹方式

    有时候我们会不经意的吧不必要的文件传到git的远程仓库上like this... 如果你也碰到这情况,请别急,点根烟然后继续往下看 先进git的安装目录运行git-bash.exe 然后用cd命令切换到项目的根目录如下如 然后再执行命令 git rm -r .idea --cached 其中.idea是我想删除的文件夹,所以用了rm -r命令,如果你想删除的是文件,则用rm就行,慎用rm -r!!!! 然后执行提交命令 git commit -m '删除不必要的文件' 最后进android st

  • 从git仓库中删除.idea文件夹的小妙招

    如果不配置.gitignore的文件,带push代码的时候就会把一写不必要的文件push到远程仓库,如.idea文件.如果不小心出现此文件在远程仓库可以通过一下步骤delete此文件: 1.配置.gitignore文件(新建/编辑) echo '.idea' >> .gitignore 2.将.gitignore文件上传到远程仓库 git pull git add .gitignore git commit -m 'edit .gitignore' git push origin master

  • Android打包上传AAR文件到Maven仓库的示例

    1.创建 Android 库 按以下步骤在项目中创建新的库模块: 依次点击 File > New > New Module. 在随即显示的 Create New Module 窗口中,依次点击 Android Library 和 Next. 为您的库命名,并为库中的代码选择一个最低 SDK 版本,然后点击 Finish. 2.上传aar包至Maven私服 打开新模块 build.gradle 文件,按如下说明修改: plugins { id 'com.android.library' // 库

  • Eclipse设置svn忽略文件或文件夹(svn:ignore)的操作

    已同步文件 最常见的就是用maven管理项目中的target目录 Window–>Preferences–>Team–>Ignored Resource–>Add Pattern 输入 */target/* 新文件 如果我们项目中有一个新目录,我们不希望同步 做法 为了演示,我新建了一个不想同步的文件夹和不想同步的文件 在不想同步的文件或文件夹上右键->Team ->添加至 svn:ignore 补充:MyEclipse:使用git提交代码如何忽略class文件 MyE

  • Spring Boot Maven 打包可执行Jar文件的实现方法

    Maven pom.xml 必须包含 <packaging>jar</packaging> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <fork>

  • Win10利用bat文件实现文件与文件夹批量重命名的实践

    目录 bat文件 批量重命名文件夹 批量重命名文件 后记 bat文件 利用Win10的bat文件能够实现垃圾清理.电脑关机等.同样的,使用Win的bat文件能够实现文件与文件夹的批量重命名,这样就免去了通过写一个脚本,或者代码程序来运行.做这个的初衷是在处理深度学习的数据集时,为了增加可识别性,将每一个图片文件重命名,特以博客以记之.参考网上的一些方式以及自己的试坑,最终总结如下. 批量重命名文件夹 在示例中我创建了1005个文件夹,如下图所示 bat文件代码如下,其中第五行是命名,!a!是一个

随机推荐