使用Eclipse重命名所有软件包:
我试图使用Eclipse重命名软件包。很快我就遇到了这种方法的问题。我的本地分支中master分支的第一次合并再次还原了所有旧软件包。当时的想法是在没有人参与项目的周末重新命名软件包。但是每个分支仍然需要 5+小时,并且我不得不至少更改master和last release分支,以防止合并冲突。我意识到这不适用于我的情况。
使用自定义Java程序重命名所有软件包:
我编写了一个Java程序,该程序执行以下步骤:
- 在所有目录的第一次迭代中,它会将所有文件夹都复制到只有小写名称的新目录中(第一个子软件包已完全重命名,以防止Windows主机出现问题)。
- 然后程序开始通过新目录进行第二次迭代,并重命名Java文件中的所有导入包。对于大多数导入来说,这很简单,但是我需要使用反射来正确重命名Java类(例如
import my.package.MyClass.MyEnum
)中的静态导入和Enums的导入。
- 程序的下一步是重命名Eclipse中发现的所有其他旧包名称实例,例如TestNG XML文件,...
- 最后一步是删除旧文件夹。
程序的运行时间约为每个分支2分钟。更新后的项目可以编译,我没有遇到任何问题。
我没有添加任何代码,因为该程序仅适用于该项目。也许它仍然可以帮助某人。
,
就我而言,我使用IntelliJ Idea IDE,并且提到的重构要容易得多。
您只需要右键单击并按照您提到的方式更改软件包名称,这将在每个使用软件包的地方更新软件包名称。
让我知道它是否有效。
See the screenshot for reference
,
这可以使用中间包名称通过两个步骤执行:
- 右键单击软件包
main.MyPackages.Utils
,然后选择Refactor-> Rename ...
- 输入
main.mypackages2.utils2
(如果有子软件包,请选中Rename subpackages
),然后单击“确定”
现在重复相同的操作,并将main.mypackages2.utils2
重命名为main.mypackages.utils
。
本文链接:https://www.f2er.com/3125985.html