正如帖子中所建议的,Kotlin M13 已经发布!通过jetbrains
:
确保这些 .kotlin_module 文件不会被您的打包过程剥离。
所以,我们不能使用exclude
选项来排除这个资源文件的生成。
正如Kotlin M13 中所描述的那样!, 我们应该:
在 Maven 中,我们使用 groupId 和 artifactId 作为模块名称,但你可以说
<configuration>
<moduleName>com.example.mymodule</moduleName>
</configuration>
在 Gradle 中它是项目名称 + 构建任务名称,用于自定义:
compileKotlin {
kotlinOptions.moduleName = "com.example.mymodule"
}
这是我对Android
库项目的配置:
ext {
GROUP_ID = 'custom.group.id'
ARTIFACT_ID = 'artifactid'
}
android {
compileSdkVersion 25
buildToolsVersion "25.0.0"
compileOptions {
kotlinOptions.freeCompilerArgs += ['-module-name', "$GROUP_ID.$ARTIFACT_ID"]
}
defaultConfig {
...
}
buildTypes {
...
}
}
META-INF/custom.group.id.artifactId.kotlin_module
将生成名为的资源文件,而不是生成META-INF/library_release.kotlin_module
。不会再找到重复的文件。
您可以阅读这篇文章和这篇文章以获取更多信息。