少しbuild.gradleを読んだ。
http://gradle.monochromeroad.com/docs/userguide/application_plugin.html
Android Studioで入れた拡張で、コーディングのときに利用するものを使う。
apply plugin: 'com.android.application' apply plugin: 'kotlin-android'
http://gradle.monochromeroad.com/docs/userguide/organizing_build_logic.html
ビルドスクリプトを実行するときに外部のライブラリを使う場合、そのライブラリをビルドスクリプトのクラスパスに追加する必要がある。
buildscript { ext.kotlin_version = '0.12.100' // 外部ライブラリの入っているリポジトリ repositories { jcenter() mavenCentral() } // 上記のリポジトリに入っているライブラリのパス dependencies { classpath 'com.android.tools.build:gradle:1.3.1' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version" // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } }
http://gradle.monochromeroad.com/docs/userguide/writing_build_scripts.html
上の中のext
は拡張プロパティ。ext.property_name = val
あるいは、ext { .. }
内で定義して、他の箇所からproperty_name
で呼び出せるみたい。
http://int128.hatenablog.com/entry/20131205/1386212961
これまで書いたような設定は個々のbuild.gradleに書いたプロジェクトに反映される。
しかし、allprojects
やsubprojects
に書いた内容はすべてのprojectに反映される。
allprojects { // ルートプロジェクトを含む全プロジェクトに適用 apply plugin: 'project-report' } subprojects { // サブプロジェクトに適用 apply plugin: 'java' apply plugin: 'findbugs' sourceCompatibility = 1.7 }
利用するライブラリのパスを適宜つっこんでいく。
dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:23.1.0' compile 'org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version' }
結論
もう少しまじめに読もうと思って、Gradle徹底入門を買いました。