一直以来, Gradle 项目中管理依赖是让人头疼的一件事. 缺少补全提示, 特别是在多模块项目中, 依赖的更新和同步更是难以把控.
后来我发现了一个神奇的插件: kotlin-dsl. 很好用, 让我摆脱了这种困扰. 这里分享一下用法.
条件
-
Android Studio 3.0 或 Idea 2017.3 及以上
-
Gradle 4.6 及以上(我当前正在用的版本)
-
了解 Kotlin
使用
-
首先在项目根目录新建名为
buildSrc
的目录结构(AS 需要切换到 Project 视图), 并在buildSrc
目录下写一个build.gradle
脚本, 如下:Root Project ├── app │ ├─... │ ... │ ├── buildSrc │ ├── build.gradle │ └── src │ └── main │ └── kotlin │ └── Dependencies.kt ...
这里的
Dependencies.kt
是统一添加依赖的kotlin文件,在 gradle 刷新依赖时编译,这是可以使用自动补全的基本原理. -
build.gradle 配置使用
kotlin-dsl
插件plugins { id "org.gradle.kotlin.kotlin-dsl" version "0.16.0" }
-
向
Dependencies.kt
添加依赖, 这里我添加了RxKotlin
package io.github.wolf.application object Ver { const val rxKotlin = "2.2.0" } object Rx { const val kotlin = "io.reactivex.rxjava2:rxkotlin:${Ver.rxKotlin}" }
-
刷新 gradle
-
现在可以愉快的使用依赖自动补全了
自动补全
其他
kotlin-dsl
不但可以自动补全依赖, 其他比如 minSdkVersion
, targetSdkVersion
, compileSdkVersion
之类也可以统一管理, 以保持多个模块的版本一致性.
kotlin-dsl
的简单使用就这些, 还有复杂如自定义任务等用法不细说了.
网友评论