Migrating from IntelliJ Projects

We might provide an automatic migration option in Android Studio in the future.

For now, to migrate your IntelliJ project to an Android Gradle project (which can then be imported into IntelliJ and supported directly in IntelliJ), follow the following steps:

  • Create a basic "build.gradle" file. Unlike the default Gradle file created by Android Studio when you create a new project, the following gradle file will point the source code directories to the existing folders (e.g. res/src/) instead of the default new directory structure used for Gradle projects (src/main/java/src/main/res/, etc). A sample gradle file is given below.
  • Identify which library projects you are using (such as ActionBarSherlock). In Gradle you no longer need to add in these libraries as source code projects; you can simply refer to them as dependencies, and the build system will handle the rest; downloading, merging in resources and manifest entries, etc. For each library, look up the corresponding AAR library dependency name (provided the library in question has been updated as a android library artifact), and add these to the dependency section.
  • Test your build by running gradle assembleDebug in your project. If you have not built with Gradle before, install it from http://www.gradle.org/downloads. Note that when you create new projects with Studio, we create a gradle wrapper script ("gradlew" and "gradlew.bat") in the project root directory, so any users of the project can just run "gradlew assembleDebug" etc in your project and gradle is automatically installed and downloaded. However, your existing IntelliJ projects presumably does not already have the gradle scripts.)
  • Note that IntelliJ projects for Android generally follow the same structure as Eclipse ADT projects, so the instructions in the Eclipse migration guide might be helpful.

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‘)

    }

}

For more information on customizing your build once you have the basics set up, see the new build system user guide. For additional information, see the build system overview page.

http://tools.android.com/tech-docs/new-build-system/migrating-from-intellij-projects

时间: 2024-10-27 00:05:20

Migrating from IntelliJ Projects的相关文章

Android官方技术文档翻译——IntelliJ 项目迁移

本文译自Android官方技术文档<Migrating from IntelliJ Projects>,原文地址:http://tools.android.com/tech-docs/new-build-system/migrating-from-intellij-projects. 上一篇介绍了如何上一篇介绍了如何把一个Eclipse上的Android项目迁移到 Android Studio,这一篇继续介绍对 IntelliJ项目的迁移. 翻译不易,转载请注明CSDN博客上的出处: http

Spark机器学习(10):ALS交替最小二乘算法

1. Alternating Least Square ALS(Alternating Least Square),交替最小二乘法.在机器学习中,特指使用最小二乘法的一种协同推荐算法.如下图所示,u表示用户,v表示商品,用户给商品打分,但是并不是每一个用户都会给每一种商品打分.比如用户u6就没有给商品v3打分,需要我们推断出来,这就是机器学习的任务. 由于并不是每个用户给每种商品都打了分,可以假设ALS矩阵是低秩的,即一个m*n的矩阵,是由m*k和k*n两个矩阵相乘得到的,其中k<<m,n.

Spark机器学习(6):决策树算法

1. 决策树基本知识 决策树就是通过一系列规则对数据进行分类的一种算法,可以分为分类树和回归树两类,分类树处理离散变量的,回归树是处理连续变量. 样本一般都有很多个特征,有的特征对分类起很大的作用,有的特征对分类作用很小,甚至没有作用.如决定是否对一个人贷款是,这个人的信用记录.收入等就是主要的判断依据,而性别.婚姻状况等等就是次要的判断依据.决策树构建的过程,就是根据特征的决定性程度,先使用决定性程度高的特征分类,再使用决定性程度低的特征分类,这样构建出一棵倒立的树,就是我们需要的决策树模型,

Spark机器学习(5):SVM算法

1. SVM基本知识 SVM(Support Vector Machine)是一个类分类器,能够将不同类的样本在样本空间中进行分隔,分隔使用的面叫做分隔超平面. 比如对于二维样本,分布在二维平面上,此时超平面实际上是一条直线,直线上面是一类,下面是另一类.定义超平面为: f(x)=w0+wTx 可以想象出,这样的直线可以有很多条,到底哪一条是超平面呢?规定超平面应该是距离两类的最近距离之和最大,因为只有这样才是最优的分类. 假设超平面是w0+wTx=0,那么经过上面这一类距离超平面最近点的直线是

Spark GraphX实例(1)

Spark GraphX是一个分布式的图处理框架.社交网络中,用户与用户之间会存在错综复杂的联系,如微信.QQ.微博的用户之间的好友.关注等关系,构成了一张巨大的图,单机无法处理,只能使用分布式图处理框架处理,Spark GraphX就是一种分布式图处理框架. 1. POM文件 在项目的pom文件中加上Spark GraphX的包: <dependency> <groupId>org.apache.spark</groupId> <artifactId>sp

Spark机器学习(11):协同过滤算法

协同过滤(Collaborative Filtering,CF)算法是一种常用的推荐算法,它的思想就是找出相似的用户或产品,向用户推荐相似的物品,或者把物品推荐给相似的用户.怎样评价用户对商品的偏好?可以有很多方法,如用户对商品的打分.购买.页面停留时间.保存.转发等等.得到了用户对商品的偏好,就可以给用户推荐商品.有两种方法:用户A喜欢物品1,商品2和物品1很相似,于是把物品2推荐给用户A:或者用户A和用户B很类似,B喜欢商品2,就将商品2推荐给用户A.所以协同过滤分为两类:基于用户的协同过滤

Spark机器学习(3):保序回归算法

保序回归即给定了一个无序的数字序列,通过修改其中元素的值,得到一个非递减的数字序列,要求是使得误差(预测值和实际值差的平方)最小.比如在动物身上实验某种药物,使用了不同的剂量,按理说剂量越大,有效的比例就应该越高,但是如果发现了剂量大反而有效率降低了,这个时候就只有把无序的两个元素合并了,重新计算有效率,直到计算出来的有效率不大于比下一个元素的有效率. MLlib使用的是PAVA(Pool Adjacent Violators Algorithm)算法,并且是分布式的PAVA算法.首先在每个分区

Spark操作:Aggregate和AggregateByKey

1. Aggregate Aggregate即聚合操作.直接上代码: import org.apache.spark.{SparkConf, SparkContext} object AggregateTest { def main(args:Array[String]) = { // 设置运行环境 val conf = new SparkConf().setAppName("Aggregate Test").setMaster("spark://master:7077&qu

Android官方技术文档翻译——新构建系统概述

本文译自Android官方技术文档<New Build System>,原文地址:http://tools.android.com/tech-docs/new-build-system. 这篇文章从去年就开始翻译的了,无奈项目较赶我翻译的速度又慢,翻译期间Google官网又对它不断更新,以致拖到了现在.这一篇文档是对Android新构建系统的概述,列出了与它相关的一些文档,以及这个新构建系统的各版本更新日志.这个新的构建系统,其实也就是这个Gradle 上的 Android 插件,如果你的An