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

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

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

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

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

先贴一个效果,如下图

Maven仓库无用文件和文件夹清理的方法实现_第1张图片

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仓库清理内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(Maven仓库无用文件和文件夹清理的方法实现)