如何在Eclipse中打开Android Studio项目?

77

新版Android Studio提供更好的工具来进行Android开发。我看到有很多问题是关于如何将Eclipse项目转移到Android Studio,但另一种情况呢?

如果你在Android Studio中制作了一个Android应用程序,你能把它带回Eclipse吗?如果可以,怎么做?

这对于特定的Eclipse插件是必要的,比如Blackberry Android插件。

谢谢。


7
如果项目使用新的基于Gradle的构建系统,我认为今天无法将其带回Eclipse,因为Eclipse尚不支持它(尽管最终会支持)。请问您能否将其带回Eclipse? - CommonsWare
1
导入项目,然后选择属性 > Java Build Path > 源选项卡...移除 src 路径...使用添加文件夹按钮将路径添加到源代码中的 java 文件夹...然后像往常一样构建您的项目。 - Deniz
这个线程有任何更新吗? - 0x90
虽然有点晚了,但关于Blackberry插件,我相信Android Studio有一个。然而,我在BB命令行工具方面运气更好,部分原因是Eclipse集成从未符合我的口味,而AS每次更新都会删除未知的插件。 - ProjectJourneyman
11个回答

69

您不能直接导入项目,但是实现它并不难:

  • 在eclipse中创建一个新的Android空项目
  • 用Android Studio项目中的res/文件夹和AndroidManifest.xml文件覆盖新生成的文件
  • 将Android Studio项目中java/文件夹的内容(它应该包含您的包名文件夹结构,如com/example/app/以及java文件)复制到Eclipse src文件夹中
  • 如果需要,链接所需的库

基本上,Android应用程序的基本元素是Java文件、清单文件和资源。从这些元素出发,您可以在您喜欢的IDE中重新构建一个项目。


1
我现在尝试了使用Google的basicgesturedetect示例文件,它对我有效。只需将zip文件中的文件拖放到一个空的Android项目中,这有点繁琐,但最终你会得到一个正常工作的Android项目。 - Simon
1
恰如其分的答案。基本思路是,这两个 IDE 仅在它们打包内容的方式上有所不同。但资源和代码是通用的:Java 代码用于功能,XML 代码用于布局,JAR 用于依赖关系和 Android 清单。 - Bogdan Alexandru

41

这是不可能的。我们打算在ADT中添加对基于Gradle的项目的支持,但目前还不可能。


我们能期待它很快发布吗?如果需要更长时间,我现在可以使用Android Studio吗?它稳定吗? - amalBit
3
我已安装了Graclipse并且能够进行编译和运行。 - AZ_
3
自五月份以来有什么变化吗?在新的构建系统达到1.0之前,它会被放进路线图中吗? - yincrash
4
目前我们无法宣布预计到达时间。 - Xavier Ducrohet
3
你不能直接导入它,但是在Eclipse中让它工作并不难。阅读我的答案即可。 - Santacrab
显示剩余4条评论

3

将Android Studio项目导入Eclipse的逐步过程...

  1. 使用向导在Eclipse中启动新的Android项目,并从app/build.gradle中填写以下细节:

    ApplicationName和ProjectName:您可以从/文件夹中的.iml文件中找到项目名称 PackageName: MinSDK、TargetSDK和CompileSDK

  2. 单击向导中的下一步,并确保您已经“取消选中”了'创建Activity'和“创建自定义图标”。点击完成。

  3. 在新创建的项目中打开AndroidManifest.xml文件。从app/src/main/AndroidManifest.xml按原样复制“application”、“uses-permission”标签

  4. 源文件:将所有内容替换为AndroidStudio/app/src/main/java中的内容,以Eclipse//src文件夹为目标文件夹。

  5. 资源文件:将所有内容替换为AndroidStudio/app/src/main/res中的内容,以Eclipse //res文件夹为目标文件夹。

  6. 库文件:将AndroidStudio/app/libs中的所有库文件复制到Eclipse //libs文件夹中。

  7. 依赖库:使用属性->Android->Library->Add导入并添加AppCompact作为依赖库

  8. 解决任何构建错误。最后一步进行清理和构建。

  9. 您可能无法直接将其部署到手机上,但可以在bin文件夹中找到生成的.apk文件。


2

更新:请参阅Eclipse和Android Studio的一个Android项目

目前,如果您在Android Studio中创建Android项目,则在Eclipse中打开它会遇到困难。(但是,在Android Studio中添加了build.gradle的经典Android应该更容易)

因此,您可以将其作为一般项目打开,然后将某些模块转换为Eclipse项目,但仍然无法完全功能(但对于快速查看内部可能足够)

来自如何使用Gradle为Android项目生成Eclipse和Intellij项目文件

正如Android团队在问题57668中回答的那样(由@arcone提出)

项目成员#2 x...@android.com

Eclipse插件与android插件不兼容。

您将无法使用Eclipse中的默认Gradle支持导入Android gradle项目。

要使其在Eclipse中工作,我们将不得不更改Eclipse的Gradle插件,就像我们正在修改IntelliJ中的Gradle支持一样

也就是说,Android团队正在为IntelliJ开发gradle插件,而Eclipse的gradle插件也需要更新。

Eclipse现在可以做到的是

这已经过时,请参阅如何将Android Studio项目导入Eclipse?

1.将该项目作为一般项目导入

.project

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
    <name>OpenSpritz-Android</name>
    <comment></comment>
    <projects>
    </projects>
    <buildSpec>
    </buildSpec>
    <natures>
    </natures>
</projectDescription>

在普通项目中引入 Android Gradle 项目

2.将两个 Eclipse “dot” 文件放到模块中的/OpenSpritz-Android/app/src/main/OpenSpritz-Android/lib/src/main 文件夹中。

添加Eclipse文件

.project

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
    <name>OpenSpritz-Android-app</name>
    <comment></comment>
    <projects>
    </projects>
    <buildSpec>
        <buildCommand>
            <name>com.android.ide.eclipse.adt.ResourceManagerBuilder</name>
            <arguments>
            </arguments>
        </buildCommand>
        <buildCommand>
            <name>com.android.ide.eclipse.adt.PreCompilerBuilder</name>
            <arguments>
            </arguments>
        </buildCommand>
        <buildCommand>
            <name>org.eclipse.jdt.core.javabuilder</name>
            <arguments>
            </arguments>
        </buildCommand>
        <buildCommand>
            <name>com.android.ide.eclipse.adt.ApkBuilder</name>
            <arguments>
            </arguments>
        </buildCommand>
    </buildSpec>
    <natures>
        <nature>com.android.ide.eclipse.adt.AndroidNature</nature>
        <nature>org.eclipse.jdt.core.javanature</nature>
    </natures>
</projectDescription>

.classpath

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="java"/>
    <classpathentry kind="src" path="gen"/>
    <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
    <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
    <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>
    <classpathentry kind="output" path="bin/classes"/>
</classpath>

.3. 将现有的Android代码导入工作区

results

然后您可以以熟悉的方式浏览代码,但即使在那之后,您也无法使用Eclipse ADT运行。

.4.

现在,您可以使用gradle CLI或Nodeclipse/Enide Gradle for Eclipse市场)运行构建和任务。

start

讨论请参见https://github.com/Nodeclipse/nodeclipse-1/issues/148

还在Can't run imported gradle android project in Eclipse中得到了解答。


0

我非常想念Eclipse中的自动构建功能,但同时也讨厌Mac上Eclipse的速度和错误。拥有两全其美的体验会很不错。Eclipse和Android Studio中的项目布局有很大的差异,我猜想改变默认布局可能会非常困难,甚至不可能。因此,我尝试在Eclipse中创建一个空的Android项目。然后,我删除了物理文件夹和文件,并创建了链接资源来引用Android Studio项目中的那些文件夹和文件,结果!它奏效了。

这是我的资源映射:

AS-Project/app/src/main/AndroidManifest.xml -> Eclipse-Project/AndroidManifest.xml  
AS-Project/app/src/main/res                 -> Eclipse-Project/res  
AS-Project/app/src/main/assets              -> Eclipse-Project/assets  
AS-Project/app/src/main/java                -> Eclipse-Project/src    
AS-Project/app/libs                         -> Eclipse-Project/libs-as  

链接文件夹对于“libs”文件夹并不完全适用。因此,我将其映射到一个名为“libs-as”的文件夹,并手动将JAR添加到项目构建路径中。在最坏的情况下,我想你可以维护两个单独的libs文件夹。

Eclipse Project layout

顺便提一下,将两个项目并排放置,并使用位置变量引用相对路径(例如${PARENT-1-PROJECT_LOC})是一个好主意。


0

这篇发表的答案对我很有用,但是由于我对这些IDE的经验不足而导致了一些错误。因此,对于任何其他初学者,请小心以下几点:

  1. 使用相同的最低、目标和构建SDK
  2. 使用完全相同的项目名称,并根据包名称观察项目目录的顺序,以正确定位.java文件的位置
  3. 对于/res文件夹,复制缺失的目录
  4. 编辑所有匹配的xml文件(我使用的是NotePad),仔细选择正确的条目组合,其中一些来自每个文件

在此之后可能仍然会遇到一些错误,但只要坚持不懈,您应该能够纠正它们。


0

我认为将Android Studio项目导入Eclipse是不可能的,除非进行大量手工操作。


0

将项目从Android Studio移植到Eclipse的简单方法。

1)在Eclipse中导入项目。在这些项目中,src文件夹中没有文件。

2)转到您在Eclipse中导入的文件夹结构中可用的java文件夹。复制内部文件夹,它通常以“com”开头,并粘贴到源“src”文件夹中。

现在您可以编译项目,它将正常工作。如果您的项目需要第三方库,则还需添加所需文件。


0

如果你知道诀窍,它就非常简单。

  • 用 Android Studio 项目的 res 文件夹替换 Eclipse 项目的 Res 文件夹。

  • 进入 java 文件夹,将所有文件夹复制并粘贴到 Eclipse 项目的 src 文件夹中。

  • 打开 Android Studio 项目的 AndroidManifest.xml,复制全部内容并粘贴到 Eclipse 项目的 manifest 中。

  • 清理并运行项目。


0

导入项目,然后选择属性 > Java 构建路径 > 源选项卡... 删除 src 的路径... 使用添加文件夹按钮添加源代码中的 java 文件夹路径... 然后像往常一样构建您的项目。

Configure path to java folder where your source code resides


这并没有解释应该如何处理res文件夹。 - Paul Verest

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