我正在尝试在我的android项目上使用dokka来生成kdoc。 但是,当我运行脚本'modules:app [dokka]'时出现此错误: 无法确定任务':app:dokka'的依赖关系。 kotlin.KotlinNullPointerException(无错误消息)
我在gradle文件中添加了以下几行:
项目build.gradle
buildscript {
ext {
dokka_version = '0.9.18'
}
dependencies {
classpath "org.jetbrains.dokka:dokka-android-gradle-plugin:$dokka_version"
}
}
app build.gradle
plugins {
id 'org.jetbrains.dokka-android'
}
dokka {
outputFormat = 'html'
sourceDirs = files('src/main')
outputDirectory = "$buildDir/javadoc"
}
无法确定任务':app:dokka'的依赖关系。 kotlin.KotlinNullPointerException(无错误消息)
答案 0 :(得分:0)
问题在于这是一个多平台项目。在应用程序级别的gradle文件中,我还将应用org.jetbrains.kotlin.multiplatform
插件。如dokka github release page中所述:
Experimental Kotlin Multiplatform support is scheduled for 0.9.19
似乎没有其他解决方案,只能等待下一个版本的dokka。
编辑::有一种解决方法on the kolinlang forum
dokka {
impliedPlatforms = ["common"] // This will force platform tags for all non-common sources e.g. "JVM"
kotlinTasks {
// dokka fails to retrieve sources from MPP-tasks so they must be set empty to avoid exception
// use sourceRoot instead (see below)
[]
}
sourceRoot {
// assuming there is only a single source dir...
path = kotlin.sourceSets.commonMain.kotlin.srcDirs[0]
platforms = ["common"]
}
}