如何重命名 android 包的名称?

按 Shift + F6似乎只是重命名最后一个目录。
例如 ,在项目 com.example.test中,它只提供重命名 test。如果导航到 .java或 Manifest 文件中的软件包名称并按 Shift + F6,也会出现同样的情况。

有办法重命名包吗?

207247 次浏览

你可以这样做:

  1. 在清单文件中手动更改包名称。
  2. 点击你的 R.java类和按 F6(重构-> 移动..。)。它将允许您将类移动到另一个包,并且对该类的所有引用都将更新。

我通过从命令行手动更改目录名来解决这个问题。然后 Intellij 自动识别新的包名。然后,我必须在导入它的每个文件中搜索并替换包名称。这似乎是一个丑陋的变通方法,但 Intellij 似乎不愿意改变软件包的名称。

我找到了一个解决这个问题的好办法。以问题中提到的例子为例,将包名从 com.example.test改为 com.example2.test的步骤如下:

  1. 创建一个临时目录,比如目录 example中的 temp(旁边是目录 test)。
  2. 回到 Intellij 项目,选择文件夹 com.example并单击 Shift + F6。现在它提供重命名文本 example。在这里您可以输入您想要的新文本,IntelliJ 将为您完成其余的工作。
  3. 从文件系统中删除临时目录 temp

这种思想可以用来重构包名称的任何部分。

祝你好运! !

解决方案1: 我更改了 src 子文件夹名称、清单文件、活动头和运行/调试配置。还有建筑错误。如果您的项目不是那么大,只需创建一个新项目,复制粘贴旧文件,并更改包名称的头部。Java 文件和 android 清单。

解决方案2: 在 IntelliJ12内部,转到 Some File.java并找到您的旧软件包名称

package com.myself.project2

单击要更改的单词。按 Shift+F6
对话框出现,键入新名称。

然后去运行/编辑配置。内部启动单选按钮更改软件包名称为新的。它应该工作。

IntelliJ 的其他重命名选项是: http://www.jetbrains.com/idea/webhelp/rename-refactorings.html

解决这个问题的最佳方法是访问 AndroidManifest.xml: package="com.foocomp.fooapp:

  • 将光标设置为 “ Foocomp”
  • Shift+F6
  • 将 Package 重命名为任何您想要的名称
  • 重复 “ fooapp””。

我没问题。

另外,替换整个项目的路径,因为它没有改变一切。然后清理,重建和它的工作-> 在 Android Studio/IntelliJ 你应该注销“紧凑的空中间包”

我在整个项目中找到了另一个重命名包的解决方案:

  1. 打开包中的文件。
  2. IntelliJ 在打开的文件上方显示文件的面包屑。
  3. 在要重命名的包上: 右键单击 > 重构 > 重命名。

这会在整个项目中重命名包/目录。

取消在 ProjectExplorer Windows 设置菜单中选择“隐藏中间空包”,以便重构每个目录

我所做的是

  1. 更改清单。
  2. 关闭机器人工作室
  3. 打开带文件资源管理器的文件夹。更改文件夹名称。
  4. 打开 androidStudio,并执行搜索和替换操作。

成交!

我所做的是:

我只是在 src 文件夹中创建了具有所需名称的包,该包位于具有当前名称的当前包旁边。

我将当前软件包的所有内容拖动到新软件包,intellij 弹出一个对话框,询问我是否要在软件包引用和项目引用中重构到新软件包,我点击“是”和 TA-DAAA,效果非常好。

日食: 右键单击 project > Android tools > Rename application package。

就这么简单。

enter image description here

在 Android Studio 中: 在 defaultConfig > sync 下打开 build.gradle 文件 > 重命名 applicationId

如果你想重命名整个 android 包,这是最好的方法:

  1. 标记为检查-紧凑空中包装

  2. 右键单击您要更改的包笼,然后 重构-> 重命名-> 重命名所有

你可以在这个链接找到视频教程: Https://www.youtube.com/watch?v=a-rityzqj0a

大多数的答案,即使是最投票的答案也没有正确地完成工作,他们似乎工作和构建工作,然而,仔细看看文件结构和参考将显示你没有做什么。IntelliJ 实际上会自动完成整个过程。

1)转到 Project Tab 并确保 Packages 是下拉列表中的活动 Tab,如下所示:

Select Packages in the drop down

找到 com.example 包(注意,在 com.example.test 中没有 test) ,右键单击并选择 Refactor-> Rename..。

它会发出一个警告,多个目录... (这实际上是所希望的效果) ,点击重命名包。

输入新的包名称和 Refactor..。

它将进行搜索并显示重构结果。

单击 Do Refactor 按钮,它将完成所有操作,甚至重命名所涉及的文件夹和文件... ... 每个引用都将更正为这个新名称。

2)最后修改 AndroidManifest.xml 文件

:)

大多数的答案,即使是最投票的答案也没有正确地完成工作,他们似乎工作和构建工作,然而,仔细看看文件结构和参考将显示你没有做什么。IntelliJ 实际上会自动完成整个过程。

在 Android Studio 1.1中,最简单的方法是打开项目 manifest file,然后指向要更改它的 package name的每个部分并按下 SHIFT + F6,然后选择 rename package并在对话框中写入新名称。

这种修改需要三个步骤:

  1. 更改清单中的包名称
  2. 在树视图中右键单击-> Refactor-> rename 重构软件包的名称,然后 Android 工作室将显示一个窗口,选择“ rename package”
  3. 手动更改 build.gradle 文件中的应用程序 ID: Android/defaultconfig/application ID

然后清理/重建项目

让我们解决这两个用例

重命名一个包或者修剪一个包

应用程序名称 to < em > com.mycompany.brandname

或者

应用程序名称

或者

我愚蠢的应用程序名称 别的公司,品牌

  1. 在 Android Studio 的下拉列表中选择 Package

Select package in dropdown

  1. 右键单击包含 MainActivity 的包并折射它

enter image description here

  1. 选择重命名软件包,一切将像一个魅力

但是这只会重命名包名的最后一部分

  1. 重命名包名称的第一部分或第二部分。在要重命名的包的部分中创建一个新的虚拟文件。该文件将在 mycompany.com.myapplicationame 中创建。然后在 mycompany 中移动文件(右键单击 = > move) ,使 mycompany 显示在树视图中。这将使该部分成为树视图的一部分,并将帮助您右击并重命名该部分。

enter image description here

  1. 删除虚拟文件

  2. 要修剪一个包,只需右键单击并将包部分移动到它的大父节点中

  1. 转到 AndroidManifest.xml。
  2. 将光标放在包名称中,如下面的 不要选择它,只是放置它。所示

Just place your cursor on it

  1. 然后按 shift+F6你会得到一个弹出窗口,如下所示选择 重命名包

enter image description here

  1. 输入您的新名称并选择 重构。 (注意,因为我的光标在“ something”上,所以只有 something 被重命名。)

就这么定了。

超级简单 方法:

  1. 在 build/generated 目录中查找 R.java
  2. 创建 新的包目录,同样在 build/generated/etc 下
  3. R.java移动到新创建的包。
  4. 将出现一个对话框。选择带有新包名称的现有代码 重构
  5. 清洁 重建

成交!

除了上面@Cristian 的 回答之外,我还需要再做两个步骤才能让它正常工作。我在这里总结一下:

  1. 在清单文件中手动更改包名称。
  2. 单击您的 R.java类并按下 F6(Refactor-> Move...)。它将允许您将类移动到另一个包,并且对该类的所有引用都将更新。
  3. 手动更改 build.gradle文件中的应用程序 Id: android/defaultconfig/application ID[来源]
  4. 通过右键单击 java 文件夹-> new-> 包创建一个具有所需名称的新包,然后选择并将所有类拖动到新包中。Android Studio 将重构包名 Everywhere [来源]

不幸的是,以上这些对我来说都不起作用。在经历了许多试验之后, 我在 Android Studio 中的成功之处:

  1. 对包进行“移动”,以获得所需的新包名称 单击包并选择 Refactor-> Move) 如果 Refactor-> Move 不适合您,那么创建一个您想要的名称的包,然后在现有的包中手动移动到新的包中,然后删除旧的空包。

  2. 更改清单中的包名称(手动)

  3. 用新的包名替换旧的包名 全局(在完整路径中,执行 Edit-> Find-> Replace In 路径)