小工具——清理maven本地仓库

/ Python / 没有评论 / 48浏览

有没有觉得本地Maven仓库太大,想清理下?

清理

思路:留下jar,其他文件全部干掉!

python脚本

文件名clean.py

#!/usr/bin/env python3
# -*- coding:utf-8 -*-
import os

maven_repository = 'D:\\developer\\Maven\\repository'


def list_file(path, file_handler_func=None):
    """
    过滤给定path下的所有文件,每个文件调用给定file_handler_func

    :param path: 给定的路径
    :param file_handler_func: 处理路径下的所有文件方法
    """
    if os.path.isfile(path):
        # file_handler_func为空则只打印出文件
        if file_handler_func is None:
            print(path)
        else:
            file_handler_func(path)
    else:
        # 如果是目录,则递归
        names = os.listdir(path)
        for name in names:
            list_file(os.path.join(path, name), file_handler_func=file_handler_func)


def clean(file_path):
    """
    清理文件

    :param file_path: 文件路径
    """
    if os.path.isfile(file_path):
        if file_path.endswith('.jar'):
            pass
        else:
            # 如果文件不为jar,则清理
            print('rm: %s' % file_path)
            os.remove(path=file_path)
    else:
        pass


list_file(maven_repository, file_handler_func=clean)

说明:maven_repository为本地maven仓库路径

执行