【巧立名目】利用IDEA工具修改Maven多模块项目标识包名全过程

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: 【巧立名目】利用IDEA工具修改Maven多模块项目标识包名全过程

一、背景


当我们为甲方服务提供软件开发服务时,需要按照甲方的要求去修改软件的标识,对于Maven项目来说就对应着groupId,一般地写对方公司的域名,如com.example。因此,项目中使用到的原来的代码需要赋予其新的标识。


二、具备的能力


2.1 IDEA


IDEA的版本为2020.2。


1.IDEA的全文检索,快捷键 Ctrl + Shift + R

利用该功能可以查找和修改作用域为整个项目的相关字符串。

2.文件夹迁移功能,move命令

项目的包对应着操作系统的文件,如com.example对应着com\example,因此修改包名其实就是把文件迁移到另一个文件夹下。


2.2 Maven多模块项目


一般地,Maven多模块项目的包名package和groupId保持一致,这样对文件的配置十分有利。


三、步骤


3.1 移动包


如图所示,在某一个子模块的java根目录下,选中包名右键选择重构Refactor。接着选择 Move Package or Directory

1666274499243.jpg


3.2 选择重构的条件


即选择第一个

1666274530832.jpg

点击确认完成迁移


IDEA会检索所有项目中和该包有关的文件夹进行迁移

1666274545462.jpg

3.3 清扫战场


迁移完毕后,我们会发现,项目根目录及test测试目录下会留下原来的包,迁移完毕后,遗留包成为空的文件夹,删除即可。

1666274566444.jpg


3.4 小心毒刺


系统的配置会影响到程序的运行,比如原来的组件扫描的包名、序列化的问题会导致程序运行不成功。因此,这些“毒刺”需要剔除。


3.4.1 redis序列化问题


3.4.1.1 说明


笔者对redis的键值都进行了序列化的设置,因此,重启后台后,访问到的redis序列化对象失败导致前台访问接口失败。


3.4.1.2 解决


清空redis 库即可。


3.4.2 组件扫描


3.4.2.1 说明


ComponentScan、EnableJpaRepositories、EntityScan注解都和扫描的包有关,默认扫描的包为启动类所在的包,因此如果maven模块包命名改变会影响注解的包值


3.4.2.2 解决


修改即可扫描包名


四、其它


对于其它标识需要修改的,通过IDEA的全局搜索工具可以替代你想要的任何字符。


相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
10天前
|
Java
使用IDEA创建项目运行我的第一个JAVA文件输出Helloword
本文介绍了如何使用IDEA(IntelliJ IDEA)创建一个新的Java项目,并运行一个简单的Java程序输出"Hello Word"。文章详细展示了创建项目的步骤,包括选择JDK版本、设置项目名称和路径、创建包和类,以及编写和运行代码。最后,还展示了如何通过IDEA的运行功能来执行程序并查看输出结果。
31 4
使用IDEA创建项目运行我的第一个JAVA文件输出Helloword
|
2月前
|
Java Maven
解决idea每次新建maven项目都需要重新配置maven的问题
解决idea每次新建maven项目都需要重新配置maven的问题
99 1
|
8天前
|
网络安全 开发工具 git
使用Idea提交项目到远程仓库
本文介绍了如何在Idea中创建Git本地仓库、提交更改,并推送代码到Gitee远程仓库的步骤,包括创建本地仓库、提交更改、复制远程仓库地址、配置远程仓库以及推送代码到远程仓库的过程。
使用Idea提交项目到远程仓库
|
2月前
|
Java Maven 容器
Maven使用IDEA自带工具打包,同时将lib下的jar包打入,双击jar包可直接运行
使用IntelliJ IDEA的Artifacts功能,可以将项目依赖的第三方jar包打包进jar文件中,实现双击jar包即可直接运行。
Maven使用IDEA自带工具打包,同时将lib下的jar包打入,双击jar包可直接运行
|
2月前
|
Java 持续交付 项目管理
Maven是一款基于Apache许可的项目管理和构建自动化工具,在Java开发中极为流行。
Maven是一款基于Apache许可的项目管理和构建自动化工具,在Java开发中极为流行。它采用项目对象模型(POM)来描述项目,简化构建流程。Maven提供依赖管理、标准构建生命周期、插件扩展等功能,支持多模块项目及版本控制。在Java Web开发中,Maven能够自动生成项目结构、管理依赖、自动化构建流程并运行多种插件任务,如代码质量检查和单元测试。遵循Maven的最佳实践,结合持续集成工具,可以显著提升开发效率和项目质量。
41 1
|
2月前
|
Java Maven
intellij idea如何查看项目maven依赖关系图
这篇文章介绍了如何在IntelliJ IDEA中查看项目的Maven依赖关系图,包括使用Maven工具栏和相关操作来展示和查看依赖细节。
|
2天前
|
Java Maven
Maven 项目测试
接下来我们要学习如何构建和测试这个项目。
16 5
|
15天前
|
Java Apache Maven
Maven 项目文档
Maven 项目文档
|
9天前
|
Java Apache Maven
Maven 项目文档
Maven 项目文档
|
11天前
|
Java Maven
Maven 项目文档
我们主要学习如何创建 Maven 项目文档。
24 3