updated : 2015.10.29
Android Studio 에서
간단하게 할 수 있도록 JetBrain 에서 IDE 기능을 추가했다. 자세한 사항은 아래 글을 참고하자.- Getting started with Android and Kotlin : kotlin plugin 이 설치된 상태여야 한다.
android studio 에서 kotlin 을 위한 gradle 설정
Kotlin 에서 제공하는 예제는 아래서 download 받을 수 있다.<android_projcet>/build.gradle
// Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { ext.kotlin_version = '0.12.1230' repository{ jcenter() } dependencies { classpath 'com.android.tools.build:gradle:1.3.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() } }
apply plugin: 'com.android.application' apply plugin: 'kotlin-android' android { compileSdkVersion 21 buildToolsVersion "21.1.2" defaultConfig { applicationId "com.xxxxx" minSdkVersion 16 targetSdkVersion 21 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } sourceSets { main.java.srcDirs += 'src/main/kotlin' } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:21.0.3' compile 'com.android.support:recyclerview-v7:21.0.+' compile 'com.android.support:cardview-v7:21.0.+' compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" compile 'org.jetbrains.anko:anko:0.6.2-15s' }
android studio 에서 자동으로 만드는 버전은 app.gradle 에 설정을 모아놨다. 아래와 같다.
apply plugin: 'com.android.application' apply plugin: 'kotlin-android' android { compileSdkVersion 23 buildToolsVersion "23.0.2" defaultConfig { applicationId "com.hbwhale.beluga" minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } sourceSets { main.java.srcDirs += 'src/main/kotlin' } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.2.0' compile 'com.android.support:design:23.2.0' compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" } buildscript { ext.kotlin_version = '1.0.0' repositories { mavenCentral() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } repositories { mavenCentral() }
android-gradle 버전정보와 연관성
- ext.kotlin_version = '0.12.200'
- classpath 'com.android.tools.build:gradle:1.1.0'
는 잘 동작했지만
android plugin 버전이 1.2.0/1.3.0 에서는 kotlin plugin version 이 0.12.200 이 동작하지 않았다. 그래서 최신버전으로 변경하였더니 잘 됐다. 최신버전은 ref. 2 에서 찾아볼 수 있다. [ref. 2]
- ext.kotlin_version = '0.12.1230'
- classpath 'com.android.tools.build:gradle:1.3.0'
Anko
Converting Sample
- https://github.com/i5on9i/kotlin/tree/master/converted
- Static java property not compiled into integer : KT-6818 : Build.VERSION_CODES.LOLLIPOP 에서 java.lang.NoSuchFieldError 관해
댓글 없음:
댓글 쓰기