Gradle Kotlin项目怎么生成Dokka文档

老辰酱_6846

老辰酱_6846

2026-11-07

456人浏览

原创

直接运行 dokkaHtml 任务即可生成 HTML 文档,前提是正确声明 Dokka 插件(id("org.jetbrains.dokka") version "1.9.20")、启用 Kotlin 插件、且 source set 结构合规;旧式 apply plugin 或 buildscript classpath 方式已过时,会导致任务缺失或静默失效。

gradle kotlin项目怎么生成dokka文档

Gradle Kotlin项目怎么生成Dokka文档

直接上结论:用 dokkaHtml 任务即可生成 HTML 文档,前提是 Dokka 插件已正确声明、Kotlin 插件已启用、且项目结构符合 Gradle 的 source set 约定。别用旧版 apply plugin 方式,也别在 buildscript 里手动加 classpath —— 那是 Dokka 0.x 时代的写法,现在会报错或静默失效。

为什么 dokkaHtml 找不到或不执行

常见错误现象:Task 'dokkaHtml' not found 或运行后 build/dokka/html 目录为空。

  • 没声明插件版本或版本太低:Dokka 要求 Gradle ≥ 7.6、Kotlin Gradle 插件 ≥ 1.9,plugins { id("org.jetbrains.dokka") version "1.9.20" } 必须写在模块级 build.gradle.kts 顶部(不是根项目)
  • Kotlin 插件未启用:Dokka 依赖 Kotlin 插件提供的 source set 信息;如果只用了 Java 插件,dokkaHtml 会跳过 main source set
  • Android 项目中顺序错误:id("org.jetbrains.dokka") 必须放在 id("com.android.library") 和 id("org.jetbrains.kotlin.android") 之后,否则无法识别 android.sourceSets.main
  • 多模块项目误配在根项目:在根 build.gradle.kts 中写 apply(plugin = "...") 会导致子项目找不到 source set;应改用 applyfalse + subprojects { apply(...) }

dokkaHtml 输出路径和基础配置怎么设

默认输出到 build/dokka/html,但常需自定义:

  • outputDirectory.set(layout.buildDirectory.dir("dokka/html")):推荐用 layout.buildDirectory.dir(...),比硬写字符串更可靠
  • moduleName.set("my-sdk"):影响页面标题和导航栏显示,建议设,尤其多模块聚合时
  • includes.from("README.md"):可把项目级说明嵌入首页,但路径必须相对于当前模块根目录
  • 不要设 outputFormat:Dokka 1.4+ 已废弃该参数;不同格式对应不同 task(dokkaHtml / dokkaJavadoc / dokkaGfm),直接调用对应 task 即可

示例配置片段:

dokkaHtml {
    moduleName.set("core-utils")
    outputDirectory.set(layout.buildDirectory.dir("dokka/html"))
    includes.from("README.md")
    dokkaSourceSets.configureEach {
        includeNonPublic.set(false)
        skipDeprecated.set(true)
        reportUndocumented.set(false)
    }
}

生成 Javadoc 格式(供 Maven Central 上传)要注意什么

Maven Central 要求 javadoc.jar 是标准 Javadoc 格式,不能直接用 dokkaHtml 输出:

  • 必须用 dokkaJavadoc task,不是 dokkaHtml
  • 输出目录需与 javadoc Gradle task 默认一致(通常是 build/docs/javadoc),否则 generateJavadoc Jar task 可能打包空目录
  • 若项目含 Android 代码,dokkaJavadoc 默认不识别 android.sourceSets;需显式配置 dokkaSourceSets 并指定 platform.set(Platform.jvm)
  • suppressInheritedMembers.set(true) 建议开启,避免把 toString()、equals() 这类无意义方法塞进 Javadoc

最容易被忽略的一点:dokkaJavadoc 生成的内容虽叫 “Javadoc”,但本质仍是 Dokka 渲染的 HTML,只是结构兼容 javadoc tool 输出。它不运行 javax.tools.JavaCompiler,也不解析 @see 的符号引用——所以不要指望它像原生 javadoc 那样做跨模块链接,得靠 jdkLink / stdlibLink 手动配。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Kotlin协程编程与Spring Boot集成实践
Kotlin协程编程与Spring Boot集成实践

本专题围绕 Kotlin 协程机制展开,深入讲解挂起函数、协程作用域、结构化并发与异常处理机制,并结合 Spring Boot 展示协程在后端开发中的实际应用。内容涵盖异步接口设计、数据库调用优化、线程资源管理以及性能调优策略,帮助开发者构建更加简洁高效的 Kotlin 后端服务架构。

2026.02.12

391

18

Java Kotlin协程与异步编程实战
Java Kotlin协程与异步编程实战

本专题围绕 Kotlin 协程与异步编程展开,讲解挂起函数、协程作用域、异步任务调度及并发控制方法。通过实际项目案例,帮助开发者提升后端服务性能,实现高效异步任务处理与稳定性保障。

2026.04.13

179

16

Kotlin Android开发教程大全
Kotlin Android开发教程大全

系统讲解 Google 官方推荐的 Android 开发首选语言 Kotlin 的核心知识与工程实践,涵盖 Kotlin 简洁语法(空安全/数据类/扩展函数/解构声明/作用域函数)与 Java 互操作、集合操作与函数式编程、协程(Coroutines)异步编程(suspend/launch/async/Flow)、Jetpack Compose 声明式 UI 开发(状态管理/组合函数/导航/动画)、MVVM / MVI 架构设计与 Vi

2026.06.03

288

19

Java Maven/Gradle 构建与依赖管理合集
Java Maven/Gradle 构建与依赖管理合集

系统讲解 Java 项目构建工具的使用与进阶配置,涵盖 Maven 的 POM 文件结构、生命周期(clean/compile/package/install/deploy)与插件机制、依赖范围(compile/provided/test/runtime)与传递依赖管理、多模块聚合与继承、私有 Nexus 仓库发布,以及 Gradle 的 Groovy / Kotlin DSL 语法、Task 自定义与增量构建、依赖版本目录(Versi

2026.05.09

389

25

DBeaver怎么导入数据
DBeaver怎么导入数据

DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。

2026.11.05

20

12

DBeaver安全防护教程大全
DBeaver安全防护教程大全

DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。

2026.11.05

20

12

DBeaver连接创建与配置教程
DBeaver连接创建与配置教程

本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。

2026.11.04

20

16

XORM框架结构体映射与表结构同步
XORM框架结构体映射与表结构同步

本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。

2026.11.04

20

15

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

20

15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Gradle 9 主版本升级指南
Gradle 9 主版本升级指南

共0课时 | 0人学习

Gradle 安全最佳实践
Gradle 安全最佳实践

共0课时 | 0人学习

Gradle 依赖校验手册
Gradle 依赖校验手册

共0课时 | 0人学习