java如何将所有包名重命名为小写
我有一个很大的项目,其中有很多包都是CamelCase的。我想将它们全部重命名为小写,例如:
main.MyPackages.Utils
至main.mypackages.utils
最好/最快的方法是什么
- 我考虑的第一种方法是使用IDE(Eclipse) 在我的情况下),但这是一个很大的工作,并不总是工作 因为在某些情况下,它认为包已经存在李>
- 第二种方法是自己编写一个程序来处理 这程序应将所有文件夹重命名为小写并替换 java文件中的所有导入语句都使用小写包。 听起来比实际情况更简单,因为重命名/移动非空目录需要一些额外的工作,而且在Windows上,不可能使用Java创建具有小写名称的新目录李>
有没有比上述两种方法更好的方法?如果不是,我将采用第二种方法。也许使用UNIX操作系统会更好
# 1 楼答案
可以使用中间包名称通过两个步骤执行此操作:
main.MyPackages.Utils
,然后选择重构->;重命名李>main.mypackages2.utils2
(如果有子包,请选中Rename subpackages
),然后单击确定现在重复同样的步骤,并将
main.mypackages2.utils2
重命名为main.mypackages.utils
# 2 楼答案
在我的例子中,我使用IntelliJ Idea,上面提到的重构要容易得多。 您只需右键单击并更改您提到的包名,这将在使用包名的每个位置更新包名。 让我知道它是否有效。 See the screenshot for reference
# 3 楼答案
使用Eclipse重命名所有包:
我尝试使用Eclipse重命名这些包。很快我就面对了这种方法的问题。我的本地分支中主分支的第一次合并再次恢复了所有旧包。当时的想法是在没有人参与项目的周末重新命名软件包。但每个分支仍然需要5个多小时,我必须至少更改主分支和最后一个发布分支,以防止合并冲突。我意识到这在我的情况下不起作用
使用自定义Java程序重命名所有包:
我编写了一个Java程序,执行以下步骤:
import my.package.MyClass.MyEnum
李>程序的运行时间大约为每个分支2分钟。更新后的项目已编译,我没有遇到任何问题
我没有添加任何代码,因为该程序仅适用于此项目。也许这对某人还是有帮助的