如何在基于IntelliJ IDEA的新IDE Android Studio中重命名软件包?

是否包含自动重构?

我想进行大规模重构,但我不知道怎么做。我在Eclipse工作了两年,在Eclipse中它是一个一键操作。


当前回答

我需要运行文件->使缓存无效/重新启动。。。清除原始包装的残留物

其他回答

一定要去Sheharyar的伟大答案。随之而来的答案和评论太多,很容易让人感到困惑和放弃,但不要。这个答案有效。

简而言之,你要做三件事:

(1) 取消选择压缩空中间包装。

(2) 然后,通过选择“更改包”(而不是“更改目录”)来重命名每个旧目录节点,以匹配新的包名称。(请务必预览更改。)

(3) 编辑build.gradle文件,使APPLICATION_ID与新的包名匹配。

右键单击项目面板上的包。

从上下文菜单中选择Refactor->Rename。

我尝试了两个最热门的解决方案,但发现了一些问题,尽管这两个方案在某种程度上都有效。

列表项:新的包拖放方法保持一些不变,并产生一些不希望的效果列表项:重命名包仅更改包名称的最后一部分

经过一些实验,我发现下面的方法对我很有效。

如果您只需要更改包名的最后一部分,请使用GreyBeardedGeek概述的方法,即

右键单击“项目”窗格中的包。从上下文菜单中选择Refactor->Rename

如果需要更改整个包名,请执行以下操作。

右键单击“项目”窗格中的包。从上下文菜单中选择Refactor->Move

这将创建一个新的包文件夹(必要时),但将保留包名称的最后一部分。如果需要更改最后一个零件,请相应地进行重命名。

还请注意,您可能需要修改例如build.gradle、manifest和/或任何xml资源文件中的包名,甚至需要修改硬编码的代码中的包名称。之后,根据需要执行同步/清理/重建项目。

最好的方法是编写新的包名,然后从旧的包名中拖动。

第二种方法是,如果单击Refactor then move选项,然后重命名包名,它将重命名包名并重新生成。

在Build.gradle中,您必须手动执行,如果重构,则不会在Build.ggradle中重命名。

ctrl+Shift+R一直对我有效。只需替换所有文件并选择所有文件。