在未来,我们可能会在Android Studio 中提供自动迁移的选项。
现在,将您的 IntelliJ 项目迁移到 Android Gradle 项目 (它可以导入到 IntelliJ 然后在 IntelliJ中直接支持),需要遵循以下步骤:
- 创建一个基本的“build.gradle”文件。与你在创建一个新项目时由 Android Studio 所创建的默认 Gradle 文件文件,下面的 gradle 文件将把源代码目录指向现有文件夹 (例如
res/,src/) 而不是用 Gradle 项目的默认新目录结构 (src/main/java/,src/main/res/等)。下面给出一个示例 gradle 文件。 - 确定您正在使用哪一个库项目(如 ActionBarSherlock)。在 Gradle 中你不再需要把这些库作为源代码项目加进去;你可以把它们简单地用依赖来引用,并且构建系统将处理接下来的部分;进行下载,合并资源和清单项,等等。对于每个库,会查找相应的AAR库的依赖名称(前提是,所讨论的库已经被作为一个android 库归档文件被更新),然后把它们添加到依赖的部分中去。
- 为找到关于库的合适的声明语句,你可能会发现以下博客对你有用:http://gradleplease.appspot.com/
- 通过在您的项目中运行
gradle assembleDebug可以测试您的构建。如果你之前不是用 Gradle 来构建的,需要从 http://www.gradle.org/downloads 中安装它。请注意,当您通过 Studio 创建新项目时,我们会在项目的根目录创建一个 gradle wrapper 脚本 (“gradlew”和“gradlew.bat”),所以该项目的任何用户只需在你的项目中运行“gradlew assembleDebug”等命令,gradle 就会自动下载和安装。然而,您现有的 IntelliJ 项目大概还没有这个 gradle 脚本。 - 注意,IntelliJ 的 Android 项目一般遵循和 Eclipse ADT 项目相同的结构,所以Eclipse 迁移指南中的介绍可能对你会有所帮助。
build.gradle:
buildscript { repositories { mavenCentral() } dependencies { classpath ‘com.android.tools.build:gradle:0.5.+‘ }}apply plugin: ‘android‘dependencies { compile fileTree(dir: ‘libs‘, include: ‘*.jar‘)}android { compileSdkVersion 18 buildToolsVersion "18.0.1" sourceSets { main { manifest.srcFile ‘AndroidManifest.xml‘ java.srcDirs = [‘src‘] resources.srcDirs = [‘src‘] aidl.srcDirs = [‘src‘] renderscript.srcDirs = [‘src‘] res.srcDirs = [‘res‘] assets.srcDirs = [‘assets‘] } // Move the tests to tests/java, tests/res, etc... instrumentTest.setRoot(‘tests‘) // Move the build types to build-types/<type> // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ... // This moves them out of them default location under src/<type>/... which would // conflict with src/ being used by the main source set. // Adding new build types or product flavors should be accompanied // by a similar customization. debug.setRoot(‘build-types/debug‘) release.setRoot(‘build-types/release‘) }}