尝试重构包名时,Android Studio会冻结

时间:2016-03-09 21:36:41

标签: android android-studio

我正在尝试重命名项目的包名。为此,我:

  1. Untick“Compact empty middle packages”
  2. 关注我想要更改的目录,然后按Shift + f6。
  3. 输入新包名称。
  4. 然后重构过程开始,但是当它完成时,Studio会冻结。它没有说“没有响应”,没有出现任何错误,我不能对它做任何事情但是杀了这个过程。

    当我重新启动工作室时,我发现了两个包:一个包含旧名称,另一个包含新包。奇怪的是,新包包含大约一半的目录,另一半包含丢失或空。

    我已经尝试过了:

    1. 谷歌搜索
    2. 更改graddle版本,JRE,JDK版本。
    3. 重新引导。
    4. 清洁,重建。
    5. 不同的电脑(4台不同的电脑)
    6. 不同的Android工作室版本(现在我有1.5.1,我也试过1.3.1或类似的那样)
    7. 但我没有运气。

2 个答案:

答案 0 :(得分:0)

你并不孤单,这也发生在我身上:))但我无法用Android Studio解决它。我知道这不是解决问题的最好办法。

由于package只是Project结构中的文件夹,如果你想更改包中间元素的名称,你可以在OS explorer中重命名该文件夹,然后在Android Studio中转到Edit-> Find-> Replace in路径替换所有

让我用一个例子来解释:

您有一个项目AndroidStudioFreezes包com.g2o.sample,因此您想将其更改为com.sergueymaslov.sample。这样做:

  1. 使用资源管理器转到您的项目,并将AndroidStudioFreezes\app\src\main\java\com\g2o文件夹重命名为sergueymaslov
  2. 然后在AS中转到编辑 - >查找 - >替换路径将所有package com.g2o.sample;替换为package com.sergueymaslov.sample;
  3. 希望它的帮助!

答案 1 :(得分:0)

好的,我找到了某种解决方法,以下是重命名包的步骤

  1. 使用Windows资源管理器(或Linux,无论如何)重命名文件夹,例如ex ru.sergeymaslov.app - ru.sergeymaslov.appTest。没有魔法,只需在探险家中重复它。
  2. 下载(如果您还没有这样的话)Notepad ++。
  3. 在NPP中搜索 - 在文件中查找
  4. 在"目录"字段插入项目的路径,对于ex C:/ Users / Admin / AndroidProjects / AppTest / src /我们现在需要做的就是替换导入,所以:
  5. 我们写了" ru.sergeymaslov.app"在"找到什么"和" ru.sergeymaslov.appTest" in"替换为"这就是它,取代了进口。

    1. 现在去找AndroidManifest.xml文件,点击包名并按Shift + f6(重构 - 重命名)并重命名。
    2. 重命名包含旧包名称的所有过时字符串(此处为AndroidManifest)
    3. 检查build.gradle以获取包名称,并在需要时重命名。
    4. 转到项目结构 - 模块 - 您的项目 - 风格并检查应用程序ID。
  6. 我还必须在preferenceFile.xml中重命名所有内容。

    希望这有帮助