Android Studio初体验之导入eclipse项目

lpkde 8年前

本篇使用到的Android Studio版本为1.0, Eclipse ADT版本22.3.0。

主要介绍两种导入方式:

  1. 先用Eclipse导出为Gradle build files,然后直接用Android Studio导入该项目。
  2. 用Android Studio 直接导入Eclipse项目。

Android Studio默认使用 Gradle 构建项目, Eclipse 默认使用Ant构建项目。建议Android Studio导入项目时,使用 Gradle 构建项目。

导出Eclipse 项目

本例中,使用到的 Eclipse 项目结构如图:

Android Studio初体验之导入eclipse项目

1.File –> Export:

Android Studio初体验之导入eclipse项目

2.选择导出类型。

选择 Android –> Generate Gradle build files :

Android Studio初体验之导入eclipse项目

3.选择要导出的项目,点击 next:

Android Studio初体验之导入eclipse项目

4.最终确认要导出的项目。

Android Studio初体验之导入eclipse项目

Force overriding of existing files表示覆盖导出文件。使用 Generate Gradle build files 的方式导出项目,会在项目目录中生成一些文件。这里的覆盖文件指的就是覆盖这些可能已经生成过的文件。如果你之前有使用这种方式导出过项目,建议勾选。

点击 Finish 。出现导出提示框:

Android Studio初体验之导入eclipse项目

5.导出效果

Finish 点击完毕,并没有弹出窗口显示导出的项目,就好像什么事情都没有做一样。其实,使用这个方式导出项目,是在项目中添加了一些文件,我们可以到项目目录下去看一看这些生成文件。

工作空间目录如下:

Android Studio初体验之导入eclipse项目

可以发现,在工作空间目录下,多出了 gradle 文件夹和 build.gradle 、 gradlew 、 gradlew.bat 等文件。这些文件和文件夹都和 Gradle 有关系,用于构建项目。这些文件以及文件夹的作用,我们以后再说。

6.手动修改 Gradle 相关配置(重要)

由于 Eclipse 的 ADT 插件已经很久没有更新了,自动生成的 Gradle 编译设置已经跟不上Android Studio的更新速度,所以我们需要手动修改一些内容。

打开工作空间目录下的 gradle –> wrapper –>gradle-wrapper.properties。修改一下内容:

distributionUrl=http://services.gradle.org/distributions/gradle-a.b.c-all.zip –> distributionUrl=https://services.gradle.org/distributions/gradle-2.2.1-all.zip

打开工作空间目录下的build.gradle文件。修改以下内容:

classpath ‘com.android.tools.build:gradle:0.x.+’ –> classpath ‘com.android.tools.build:gradle:1.0.0’

之所以这么设置,是因为: Eclipse 导出的 Gradle 设置已经不是Android Studio 1.0 所支持的 Gradle 已经 Gradle 插件版本,需要手动更为支持的版本。否则轻则必须不能离线导入项目,重则项目导入失败。

在线时,Android Studio会下载对应的吧gradle版本(如本例中的gradle-a.b.c-all.zip),很耗时,说不定还国内或许不能访问才能下!


Android Studio导入eclipse项目

7.打开Android Studio,选择 Open an existing Android Studio project。

Android Studio初体验之导入eclipse项目

8.此时会弹出一个框,选择Hello项目文件夹:

Android Studio初体验之导入eclipse项目

点击 OK 。

9.设置导入选项。

Android Studio初体验之导入eclipse项目

此处有一些比较重要的设置需要讲解一下。

  • Gradle project :此处通常显示的路径并不是你的 Eclipse 的工作空间的目录,而是 Eclipse 的工作空间的目录中的 gradle 路径。你需要手动删除后面的 gradle ,否则项目导入,你是看不到你的代码的,只能看到 gradle 目录下的内容。

  • Create directories for empty content roots automatically :不是很明白它的作用,一般默认即可。

  • Use default gradle wrapper(recommended) 和 Use local gradle disribution :这两个是让你设置使用的 Gradle 。默认会勾选 Use default gradle wrapper(recommended) ,我们需要手动勾选 Use local gradle disribution 。

  • Gradle home :勾选 Use local gradle disribution 后此项编程可编辑状态,默认的此处的地址为Android Studio安装目录中的 Gradle 路径地址。此处可能会有一些错误的警告,提示内容为: Gradle location is incorrect 。而你的这个目录下,确实是有 Gradle 的。产生这个问题的原因,很可能是因为 Gradle home 选项中,路径中的斜杠为 / 而不是**。你需要点击左右的文件选择按钮,重新选择到Android Studio安装目录中的**Gradle ,问题即可解决。

  • Offline work :设置 Gradle 使用离线的方式导入项目。你可以勾选也可以不勾选。如果你有进行之前 手动修改 Gradle 相关配置 的操作,你则可以勾选,以离线的方式进行编译。

点击 OK 。之后便会看到编译进度条,根据每个人机器的配置,编译的时间不同。

如果你看到下面这个界面,说明你已经导入成功了。

Android Studio初体验之导入eclipse项目


直接导入Eclipse项目

如果不使用Generate Gradle build files导出项目,可以使用Android Studio直接打开 Eclipse 工作空间,进行项目导入。

12.打开Android Studio,选择 Import Non-Android Studio project。

Android Studio初体验之导入eclipse项目

在弹出的目录选择框中,选择 Eclipse 的项目:

Android Studio初体验之导入eclipse项目

确认选择:

Android Studio初体验之导入eclipse项目

可以看到:

Importing a project creates afull copy of the project and does not alter the original Eclipse project.

字面意思就是,导入项目是对源Eclipse项目的完全拷贝,并不会改变源项目。

点击 next

Finish

Android Studio初体验之导入eclipse项目

页面给出提示:ADT项目导入工具会识别出一些.jar文件 甚至整个lib的源文件,并使用Gradle依赖关系来替换它们。但是,并不能计算出使用哪个版本的library,因此会使用最新的。如果你的项目需要 做出调整才能用最新的library进行编译,那么你可以选择重新导入项目并取消下面的选择项,或者更好的办法是更新你的项目。

等待Gradle build项目

最终导入成功,并生成一个import-summary.txt文件:

android-studio-import-eclipseproject_16.png

搞定。


参考:

http://ask.android-studio.org/?/article/21