带Gradle多项目的Kotlin模块

Eli*_*zer 5 gradle kotlin

Kotlin摆脱了模块级可见性的包级别可见性.我认为这是一个好主意,除了很难让多个Kotlin模块在Gradle多项目设置中工作.

我正在使用Gradle Wrapper 3.1,Android Studio 2.2和Kotlin 1.0.4

这是我的结构:

项目

---- myapp(android应用程序)

---- lib(android库)

---- commons(android库)

// myapp/build.gradle
dependencies {
    compile project(':lib')
}

// lib/build.gradle
dependencies {
    compile project(':commons')
}
Run Code Online (Sandbox Code Playgroud)

当我尝试同步或构建时,我收到以下错误:

错误:配置项目':lib'时出现问题.

在依赖解析中包含配置后,无法更改配置':lib:default'的依赖关系.

唯一有效的方法是确保模块名称的词法顺序与它们需要构建的顺序相匹配,这是荒谬的,而不是一个合适的解决方案.

我知道我可以发布libcommons作为文物,但我真的不喜欢那样做.

有人有什么建议吗?