2012-08-29 87 views
21

我有一个完整的工作项目(让我们称之为“mygame”)在包含多个活动的磁盘上。首先被调用的活动被称为“启动器”。我希望该项目被称为“com.mycompany.mygame”,但是当我在eclipse中执行导入项目并选择我的项目的根目录时,会出现一个对话框,指出位于此目录的项目是“com .mycompany.mygame.launcher“无法改变它。我的问题是,什么是日食用来确定我的项目名称为“com.mycompany.mygame.launcher”?它是否在清单中?eclipse如何知道你的项目名称?

+1

自从最近一次ADT升级(如果我记得是r20)之后,导入功能已经改进,并且不允许您在项目导入阶段再编辑项目名称。如果你使用源代码保存.classpath和.project,你可以使用'File - Import .. - General - Existing Projects into Workspace'导入你的项目,它将从项目中选取作为默认项目名称。 con是Eclipse生成的.classpath和.project在跨越不同的OS或Eclipse版本时可能无法正常工作。 – yorkw

+0

你的AndroidManifest.xml中的任何地方都有这个包名吗? – Hartok

+0

右上方它说:package =“com.mycompany.mygame” – Mick

回答

14

我认为日食的类名延伸活动。因为当你扩展任何其他包如碎片等,它不会创建该特定类的默认启动器。所以无论何时带有清单指向启动器的类名称都将被导入,或者它将附加类名称。与包名

8

您的意思是项目名称已更改?如果是这样,您可以检查位于项目根文件夹中的.project文件。

+0

“.project”文件包含一行 mygame,肯定不包含文本com.mycompany.mygame.launcher,所以我仍然没有明智的:-( – Mick

+0

我可以这样理解:你的项目名称是'mygame',默认包是'com.mycompany.mygame'但是当你导入这个项目到eclipse时,默认包改为'com.mycompany .mygame.launcher'?如果是这样,是否有一个文件夹的路径像'%PROJECT_ROOT%/ src/com/mycompany/mygame/launcher'或'%PROJECT_ROOT%/ launcher'? – wodong

+0

Ther没有“启动器”目录。 “.java”文件全部位于%PROJECT_ROOT%/ src/com/mycompany/mygame/ – Mick

4
在eclipse

,右键点击你的项目的Android工具 - >重命名应用程序包,将名称更改为com.mycompany.mygame

+0

这可能是有效的 - 但并没有真正回答我的问题。 – Mick

+1

为什么它不能回答你的问题?,请提供更多详细信息 –

+1

其实我有多个软件包,我从一台PC移动到另一台,我不想一遍又一遍地重命名过程,如果我可以修复一次,对于所有人来说...另外,我也曾经以各种方式对eclipse产生过如此多的仇恨,以至于我越能发现它在未来出现问题时会如何运作,我会应付得越好。另外我只是好奇。 – Mick

3

在您的清单文件清单标签的name属性会显示出包name.Also的在eclipse中的包浏览器视图将显示包名称。例如,如果您的pkg名称是com.cmpny.game,那么您的src文件夹将包含src> com> cmpny>游戏> foldersa,并且它将保存您的代码。

2

我认为这是因为所有应用程序的相同类型的所有应用程序的目录结构遵循,因为所有的应用程序包含根文件夹的一些文件/文件夹,这是我们的应用程序的名称,例如android项目包含文件.project.classpath和文件夹一样.myeclipse src bin .settings

3

在每个项目中有一个名为.project文件,该文件是负责项目名称

<?xml version="1.0" encoding="UTF-8"?> 
<projectDescription> 
    <name>PROJECTNAME</name> 
    <comment></comment> 
    <projects> 
    </projects> 
    <buildSpec> 
    ........ 
    </buildSpec> 
    <natures> 
    ....../natures> 
</projectDescription> 
1

在工程中的ts目录下有.clipse项目文件,由eclipse创建!当我们导入项目时搜索这个文件并从这个文件中收集项目相关的信息。这是如何完成的。如果你删除这个文件只是为了检查eclipse的目的,不会再把这个目录识别为一个项目!

4

为什么使用eclipse的“将现有项目导入工作区”功能?你应该使用'新的Android项目 - >从现有源创建项目'功能(我不知道这些选项如何确切地出现在你的日食中,所以你必须找到它们)。这样你就可以重命名为任何东西。

您的第二个选项可能是:将现有项目导入到工作空间(就像您已经在做的那样)。保持项目名称不变,然后完成导入过程后,您可以将项目重命名为

6

与您的问题类似,当我尝试ImportAndroidExisting Android code进入工作区时,命名关闭。

对于那些对这个问题发表了评论和困惑的人,所发生的事情是Eclipse将项目导入为第一个活动(包括名称空间)的名称。

它导入项目作为com.company.app_name.first_activity_in_the_manifest

我一直有这个问题了一会儿。我为我的项目找到了解决方案。因为它是一个git回购,我必须做Import - >Git - >Projects from Git - >local

然后它正确导入,并没有这里提到的一些解决方案的副作用,将现有代码导入到一个新项目(这可能会删除我的链接到git仓库)。

3

名称ADT在Package Explorer中显示的名称可能不是.project文件中的名称。要改变这个,右键点击名称 - >重构 - >重命名。选中“更新参考”更改名称。确保您想要的名称对您的Package Explorer列表唯一。