如何将现有的Android项目导入到Eclipse中?

168
我正在尝试将现有的Android项目导入到我的Eclipse工作区中。我选择 文件->新建->Android项目,这会弹出Android项目对话框,然后我选择“从现有源代码创建项目”,位置,构建目标和完成。
然后我收到以下错误:无效的项目描述。 有人知道如何解决这个错误吗?

3
我将工作区位置更改到一个新目录,似乎已经解决了这个问题。 - user628135
14个回答

208
  1. 文件 → 导入 → 通用 → 从现有项目中导入到工作区 → 下一步
  2. 选择根目录:/path/to/project
  3. 项目 → 全选
  4. 取消勾选 将项目复制到工作区将项目添加到工作集
  5. 完成

@James Wald 我明白了。谢谢你。 - Alston
1
如果项目最初是在NetBeans中创建的,则会出现“无效的项目描述”,这将导致无法工作。 - Akos K
@akoskm:NetBeans以完全不同的方式管理项目,与Eclipse有很大区别。在这种情况下,您需要遵循以下步骤:“文件 > 新建 > 项目… > Android > 从现有代码创建Android项目”。 - AVIDeveloper
我将一个GIT存储库克隆到我的工作区。然后我尝试了Import>General>Existing Projects和Import>Android>Existing Android code两种方式。但是都没有成功。我尝试了所有合理的组合... - Stan
它对我来说是相反的。 所以我勾选了框,这样它就会在文件夹中创建一个带有git配置的单独副本,然后我删除了旧的副本,一切都正常工作。 尽管我认为有一种方法可以从eclipse本身中删除配置。 - lazyguy
显示剩余5条评论

53

已解决:如果您想要“从现有源创建项目”,则需要创建一个新目录,然后将项目目录树放入该新目录中。然后在导入时指向新目录。


11
这个解决方案比较混乱。我建议使用导入 -> 一般 -> 现有项目。创建新文件夹并复制文件似乎是不必要的额外工作和混淆。 - JStrahl
我采用了这种方法,但遇到了一个问题,我希望我的工作区在我要导入的文件夹的父文件夹中。如果你采用这种方法,你必须将你的项目命名为与文件夹相同的名称,这样它才能找到源代码。 - seePatCode
正确的、有文档记录的解决方案是James Wald的方案。所有其他的“发现”和“补丁”都是误导性的,不符合专业标准。 - Ginger Opariti

46

当你尝试导入的源代码位于现有工作空间内时,会出现此错误消息。

将你的源代码放在一个任何现有工作空间之外的目录中,然后再进行导入。


1
没错。你的解决方案对我很有效。你知道这背后的原因吗? - AndroidDev
谢谢James。最终我知道为什么无法导入我的工作区中现有的旧项目并解决了这个问题。 - PhatHV
哇喔 - 成功了!令人遗憾的是,这个问题在没有被 IDE 处理或至少得到通知的情况下已经存在了这么长时间。 - Shaihi
在我看来,这应该是被接受的答案。我曾经因为总是将现有代码放入当前的Eclipse工作区而与这个问题斗争了很久。 - Jose_GD
这个在 SVN/GIT 中怎么操作?我将我的项目 checkout 到某个目录,然后将其导入到工作区,这会改变它的路径,因此它与我的 SVN/GIT 客户端断开连接。 - Stan

13

只需在项目文件夹中删除“.project”文件(在Linux上它是隐藏的,使用“ls -a”命令显示),然后从Eclipse中选择“从现有源代码创建Android项目”


这正是我的问题,只需删除 .project 文件就解决了!噼里啪啦!按照这个步骤立即成功。非常感谢。 - David at HotspotOffice

4

我不确定这个方法是否能解决你的问题,因为我不知道问题的起因。但是当我导入一个项目时,我会选择“文件”->“导入”->“将现有项目导入工作区”。也许这样可以规避你的问题。


谢谢,但是导入对话框上没有任何指向 Android 项目的地方。对于其他类型的项目,那样就可以了。 - paul
@paul 文件 -> 导入 -> 现有项目到工作区 对于任何类型的项目都应该有效,包括 Android 项目,只要它是一个有效的 Eclipse 项目。 - Mark B
3
以上路径应为:文件 -> 导入 -> 通用 -> 将现有项目导入工作区。我按照这个路径导入并且一切都很顺利。 - Kevin Goff
谢谢,我正好在寻找这个。它不需要将我的项目移动到其他位置。 - Sai

4
您也可以使用“创建新项目” > “常规” > “项目”,然后将该项目导入到该项目目录中。请保留HTML标记,不要提供解释。

4

我发现James Wald的回答最接近我的解决方案,除了他所说的"File->Import->General->Existing Projects into Workspace"(这对我一点用都没有)之外,我使用的是"File->Import->Android->Existing Android Code Into Workspace"。我正在使用Helios版本的Eclipse,也许你使用的版本没有这个问题。


4
似乎你不能将AndroidManifest.xml文件放在工作区根目录以下超过一级的位置,否则会出现问题。我曾经为此奋斗了一个小时,最终只好放弃并重新安排我的代码库。

3
我遇到了从SVN检出Android项目时出现错误的问题。这是我所做的,整个过程就解决了。 1.像我们正常检出其他项目一样从SVN检出该项目 2.右键单击并获取该项目的属性 3.在Java Build Path->Order and Export选项卡中选择Android API并单击“OK”
这将消除所有项目问题,目前为止看起来不错,但不确定这是否是100%正确的方法。

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接