使用Dokka生成文档时无法引入README.md的问题求助
针对你遇到的Dokka配置里includes指令不生效的问题,可以按以下步骤排查和修复:
校验路径的正确性
includes中的文件路径是相对于执行CLI命令时的工作目录,而非配置文件所在目录。如果执行java -jar命令时不在项目根目录,或者README.md的实际位置和配置里的路径不匹配,就会加载失败。你可以先尝试使用绝对路径测试,比如"/Users/xxx/project/README.md",确认文件能被找到后再换回相对路径。简化README.md内容测试
Dokka对Markdown的支持有一定限制,复杂的扩展语法(比如嵌套表格、自定义HTML块)可能导致解析失败。先把README.md简化成基础内容(比如仅保留标题和一段普通文本),重新生成文档看是否能正常加载,排除格式问题。检查JSON配置的语法正确性
配置文件的JSON语法错误会导致Dokka无法正确读取配置。可以用在线JSON校验工具检查dokka-configuration.json,重点确认:- 所有引号、逗号是否配对正确
pluginsConfiguration里的values字段是转义后的JSON字符串,确保转义符(\)没有遗漏
查看Dokka的调试日志
执行CLI命令时添加日志参数,开启调试模式查看详细报错:java -Dorg.slf4j.simpleLogger.defaultLogLevel=debug -jar ./dokka/dokka-cli-1.9.20.jar dokka-configuration.json日志中如果出现"Could not find include file"之类的提示,就能明确是文件路径问题;如果有解析错误,也能定位到具体的格式问题。
尝试调整includes的配置位置
部分场景下,将includes配置放到sourceSets数组内的对应sourceSet中,可能解决加载问题:"sourceSets": [ { "displayName": "Name", "sourceSetID": { "scopeId": "compagny.com.scheduler", "sourceSetName": "main" }, "sourceRoots": [ "src/main" ], "includes": [ "README.md" ] } ]验证Dokka版本兼容性
Dokka 1.9.20可能存在已知的includes加载问题,可以尝试升级到最新稳定版(比如1.9.20之后的版本),替换对应的CLI和插件jar包后重新测试。
内容的提问来源于stack exchange,提问作者Skaÿ

