我们有一个多平台项目,使用kapt为commonMain中的带注释的类生成源。
源由名为“generated”的自定义SourceSet添加到jvm和js目标。这很好。
现在,我们必须依靠另一个跨平台项目的commonMain中的此内容。不幸的是,生成的SourceSet中的类仅添加到jvm和js jar中,而不添加到用于解析commonMain依赖关系的元数据中(因为我们只能依赖从jvmMain和jsMain生成的内容,而不能依赖commonMain的依赖关系(循环依赖) )。
我们如何将生成的类添加到元数据 Artifact 中?
最佳答案
为此,我们在commonMain SourceSet中添加了以下几行:
tasks.getByName("compileKotlinMetadata").dependsOn("kaptKotlinJvm")
kotlin.srcDir("$buildDir/generated/source/kaptKotlin/main")
关于kotlin - 元数据相关性的生成类(带有kapt),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62283259/