Java项目替换包名

news/2024/12/24 1:11:31/文章来源:https://www.cnblogs.com/muphy/p/18625373

Java项目替换包名

import osdef process_directory(path):for root, dirs, files in os.walk(path, topdown=False):# 处理文件for name in files:file_path = os.path.join(root, name)new_name = name.replace('xxxx', 'ruphy').replace('XxXx', 'Ruphy').replace('Xxxx', 'Ruphy')new_file_path = os.path.join(root, new_name)if name != new_name:# 检查新文件名是否已存在if not os.path.exists(new_file_path):os.rename(file_path, new_file_path)# 如果是文本文件,替换内容if name != 'node_modules' and new_name.endswith(('.txt', '.properties', '.java', '.xml', '.vue', '.js', '.md', '.yml', '.css', '.wxss', '.json', '.wxml', '.html', '.htm', '.vm', '.sql', 'Dockerfile')):try:with open(new_file_path, 'r', encoding='utf-8') as file:content = file.read()with open(new_file_path, 'w', encoding='utf-8') as file:file.write(content.replace('xxxx', 'ruphy').replace('://ruphy', '://xxxx').replace('XxXx', 'Ruphy').replace('Xxxx', 'Ruphy'))except UnicodeDecodeError:# 如果文件不是 UTF-8 编码,可以尝试其他编码或忽略错误print(f"Warning: Could not decode file {new_file_path} as UTF-8. Skipping.")# 处理目录for name in dirs:dir_path = os.path.join(root, name)new_name = name.replace('xxxx', 'ruphy').replace('XxXx', 'Ruphy').replace('Xxxx', 'Ruphy')new_dir_path = os.path.join(root, new_name)if name != new_name:# 检查新目录名是否已存在if not os.path.exists(new_dir_path):os.rename(dir_path, new_dir_path)# 不处理空目录的删除,因为存在冲突# 检查是否为空目录且名称为xxxx,如果是则删除elif name == 'xxxx' and not os.listdir(dir_path):os.rmdir(dir_path)elif name == 'XxXx' and not os.listdir(dir_path):os.rmdir(dir_path)# 指定要处理的目录路径
directory_to_process = 'D:\\workspace\\ysgz\\java'
process_directory(directory_to_process)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/857748.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

某小程序sign关键字逆向分析

声明 本文章所有内容仅用于学习交流,严禁用于其他目的。文中不提供完整代码,抓包内容、敏感网址及数据接口等均已脱敏处理。严禁将相关内容用于商业用途和非法用途,否则由此产生的一切后果与作者无关。未经许可,禁止转载本文,禁止修改后二次传播。擅自使用本文讲解的技术导…

乌鸡国

1-队伍进入副本以后,走到下图分岔点离队,每人负责一条线路,寻找树妖。2-寻找仙人,可以按照1的策略继续反方向走回去找仙人。3-寻找完仙人以后,会要求帮助国王清理荆棘木,五个号散开清理完即可。 4-进入皇宫,击杀拘灵妖怪、缚仙妖怪、囚神妖怪,需要在12回合内击杀三个妖…

梦幻神器-起-泪痕碗之念-2星

1-该任务需要5个随机指定三级药、7个2级家具,其中2级家具可以提前准备,三级药为NPC随机指定,无法提前准备。 2-前面跟着流程跑,第一场战斗是"清风",需要先击杀小怪,主怪清风在第四回合以后会说"我们放水吧",说了以后才可以击杀主怪清风。3-击杀清风…

STM32F103 SPI配置(SSD1306)

有关SPI通信协议我们在《通信协议-SPI》已经进行了详细的介绍,因此这一节不再重复介绍。 一、软件/硬件SPI 想要控制STM32产生SPI方式的通讯,可以采用软件模拟或硬件SPI这两种方式。 1.1 软件模拟 所谓软件模拟,即直接使用CPU内核按照SPI协议的要求控制GPIO输出高低电平。 1…

梦幻神器-起-莫愁铃之恩-1星

1-该任务需要提前准备5个三级药,金创药、佛光舍利子除外。 2-第一场战斗是击败地府守卫弟子,1星难度不大,注意"诡蝠之刑"的反伤即可,中了"诡蝠之刑"的单位可以适当防御。3-击杀地府守卫弟子以后跟着流程走,接下来需要给三个水晶注入灵气,需要先注入中…

我家一次用电超负荷时20A保险丝断了,但16A的空气开关却没有跳闸.

回答一: 转载自:https://zhidao.baidu.com/question/1970736314255432140.html这说明两者的保护时限不同。无论是保险丝还是空气开关,并不电流达到就立即跳,而且有一定的时间延时来积累热量,热量到了才会动作。 16A的空气开关没跳说明电流虽然超过20A,但时间很快,保险丝…

Easysearch Java SDK 2.0.x 使用指南(二)

在 上一篇文章 中,我们介绍了 Easysearch Java SDK 2.0.x 的基本使用和批量操作。本文将深入探讨索引管理相关的功能,包括索引的创建、删除、开关、刷新、滚动等操作,以及新版 SDK 提供的同步和异步两种调用方式。 SDK 的对象构建有两种方式 1. 传统的 Builder 方式 最基础的…

《docker高级篇(大厂进阶):2.DockerFile解析》包括:是什么、DockerFile构建过程解析、DockerFile常用保留字指令、案例、小总结

《docker高级篇(大厂进阶):2.DockerFile解析》包括:是什么、DockerFile构建过程解析、DockerFile常用保留字指令、案例、小总结@目录二、高级篇(大厂进阶)2.DockerFile解析2.1 是什么2.2 DockerFile构建过程解析2.3 DockerFile常用保留字指令2.4案例2.4.1自定义镜像mycento…

按钮修改状态

首先创造函数void updateBaoxiaoSchedule( int id, String schedule, String schedulereason); 及其实现。 SQL语句: @Update("update submit set state=#{state},statereason=#{statereason} where id=#{id} ") void updateSubmit1( @Param("id") int id…

泰山派设备控制(RGB)

泰山派设备系统控制(RGB) 1、进入设备系统 cd /sys/class2、进入RGB灯子系统 cd /sys/class/leds/罗列可操作的设备,可以看到三个设备,“rgb-led-b”,“rgb-led-g”,“rgb-led-r”,分别对应RGB的蓝,绿,红。3、我们对其单一色灯进行操作 cd rgb-led-b4、ls罗列出可操作的…

《计算机组成及汇编语言原理》阅读笔记:p48-p81

《计算机组成及汇编语言原理》学习第 4 天,p48-p81 总结,总计 34 页。 一、技术总结 1.CISC vs RISC p49, complex instruction set computing For example, a complex instruction set computing (CISC) chip may be able to move a large block of data, perhaps a strin…

在VS2022中,“根据模型生成数据库”时报错:已添加了具有相同键的项(或:An item with the same key has already been added)

解决方法:关闭解决方案,打开解决方案所在文件夹,打开以下文件夹:.vs\ConsoleApp7\FileContentIndex,然后删除里面的所有文件,再重新在VS中打开解决方案重新生成即可