【问题标题】:Eclips projects: keeping an old version and working on a new oneEclips 项目:保留旧版本并开发新版本
【发布时间】:2014-09-02 14:43:52
【问题描述】:

也许是一个愚蠢的问题,但它就是这样:

  1. 我安装了带有 Egit 的 Eclipse。我的系统是基于 Windows Vista 的 PC。

  2. 我有一个名为“HelloWorld”(Android 应用)的项目现在运行得令我满意。

  3. 我想弄乱它来尝试/添加一些东西。

  4. 我想保持当前的“HelloWorld”项目完好无损,这样如果出现严重错误,我可以重新开始。

  5. 我想复制当前的“HelloWorld”项目,并将项目重命名为“HelloWold001”或类似的名称,然后搞砸它。

这是出于我个人的教育目的,所以我不会与任何人分享。在不使用 Egit 或类似工具的情况下实现这一目标的最简单方法是什么?

感谢您的帮助。

================================================ ================================== 更新(2014 年 7 月 19 日):

感谢在这里和其他地方发布的 cmets(主要是在 stackoverflow 上)以及对我来自 AndroidWarrior 的相关问题的回答,我想我已经设法想出了一个体面的方法来完成我想要的。

这里是:

第 1 阶段:制作项目的副本。

  1. 在包资源管理器中,右键单击要复制的项目。 (确保项目已打开。)

  2. 点击“复制”。

  3. 单击“粘贴”。在随后的对话窗口中,单击“确定”。 (不要在此阶段为您复制的项目键入新名称。您将在第 2 阶段更改项目名称。)

  4. 您应该在包资源管理器中获得项目的副本,名为“[您的旧项目名称] 的副本”。

第 2 阶段:更改复制项目的名称并“重构”。

  1. 在包资源管理器中右键单击复制的项目名称,选择“重构”并为复制的项目键入新名称。

第 3 阶段:更改复制项目的包名。

  1. 在复制的项目名称上右击,选择“Android工具”==>“重命名应用程序包”并点击。

  2. 更改包名并点击“确定”。

此阶段应注意更改 Manifest 文件中的引用,这样您就不必手动进行:

第 4 阶段:更改复制项目中对包名的引用,如其他文件中的语句,例如 java 文件中的“package [your old package name]”等。

  1. 右键单击项目中的包名(“src”下是我使用的)并选择“Refactor”==>“Rename”将包名更改为您在 Phase 中更改的名称3,点击“确定”。确保选中“更新参考”框。

  2. 此时,所有“package [your package name];”应更改您的 java 源文件和 gen 文件中的语句以反映新的包名称。

如果要更改应用名称,需要手动更改strings.xml文件中的“应用名称字符串”值。

我不确定的一件事是,如果您在第 1 阶段输入最终项目名称,是否需要第 2 阶段。

【问题讨论】:

  • 为什么不在您当前的项目中继续工作,而只是在某处保存备份?
  • 进入您的工作区,复制项目文件夹并将其保存在某处。
  • 致西蒙:我想在工作场所保留原版和新版,以便我可以轻松比较它们。 (我也可能会对原件进行一些小改动以进行测试。)

标签: android eclipse version project revision


【解决方案1】:
  1. 创建一个名为“HelloWorld1”的项目
  2. 复制同一层次结构下的所有文件和资产。
  3. 将您的软件包名称更改为其他名称。

您可以保留项目的备份并继续工作。

【讨论】:

  • AndroidWarrior,虽然我认为您的方法可能有效,但我尝试了以下方法:
  • 继续:Package Explore,选择原项目==>复制==>粘贴新项目名。重命名副本清单中的包名称。重构新项目。这似乎有效;但是,我无法更改新 java 源文件中的包语句。这会在以后造成严重问题吗?
  • 我正在编写 Android 应用程序。我在第一个(原始)程序中有 5 个 Java 文件,它们都有“package com.example.android.opengl;”作为第一个 Java 语句。在复制的项目中,我可以更改其 Manifest 中的包名,但不能更改上述语句中的包名。 (如果我更改它们,它们就会变成错误。)复制的项目可以在 Bluestacks 上编译并运行良好。我只是想知道这样继续下去是否安全。我认为能够在 Manifest 中更改包名称没有任何意义,但在任何这些“包”语句中都没有。
  • @Janinzah 您需要在文件夹结构层次结构中更改包名,然后您也可以在您的 java 文件中更改包名,它不会给您任何错误,是的,更改包名在清单中是必须的。
  • 如何更改文件夹结构层次结构中的包名?我将 src 目录中的文件夹从“opengl”更改为“opnegl002”,并更改了所有 5 个“package”语句以反映该更改。程序编译但什么也没做(崩溃)。我恢复了原始文件夹名称“opengl”和 5 个“包”语句以反映这一点。现在程序像以前一样编译和运行。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-05-06
  • 1970-01-01
  • 2017-01-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-30
相关资源
最近更新 更多