maven仓库删除下载失败的文件以及全部的空文件夹

import java.io.File;

/**
 * @description:
 * @author: yuanchuan
 * @create: 2021/08/06
 **/
public class CleanBlankFile {
    static File globalFile;

    public static void main(String[] args) {
//        你的repository的绝对路径
        globalFile = new File("E:\\java_developsoft\\maven\\repository");
        if (globalFile == null && !globalFile.exists()) {
            System.out.println("你所输入的文件非法,可能不存在,请更换路径");
        }
        deleteFailedAndBlankFile(globalFile);

    }

    private static void deleteFailedAndBlankFile(File globalFile) {
      deleteSubFile(globalFile);
    }



    private static File deleteSubFile(File file) {
        if (file == null) {
            return null;
        }
        if (file.exists()) {
            if(file.isFile()){
                if(file.getName().endsWith("lastUpdated")){
                    file.delete();
                    System.out.println("删除文件:" + file.getAbsolutePath());
                    deleteBlankParentFile(file.getParentFile());
                    return null;
                }
            }
            if (file.isDirectory()) {
                File[] files = file.listFiles();
                if (files.length == 0) {
                    file.delete();
                    System.out.println("删除文件:" + file.getAbsolutePath());
                    File parentFile = file.getParentFile();
                    deleteBlankParentFile(parentFile);
                    return null;
                }
                for (File file1 : files) {
                    deleteSubFile(file1);
                }
            }
        }
        return null;
    }

    private static File deleteBlankParentFile(File parentFile) {
        int length = parentFile.listFiles().length;
        if (length == 0 && !parentFile.getName().equals(globalFile.getName())) {
            parentFile.delete();
            System.out.println("删除文件:" + parentFile.getAbsolutePath());
            deleteBlankParentFile(parentFile.getParentFile());
        }
        return null;
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值