我最近将一个 java 组件迁移到了 kotlin。到目前为止,当我使用maven发布插件时,它也自动生成了javadoc,并且它也被上传到了oss.sonatype.com。另一方面,Dokka 似乎没有与开箱即用的发布插件集成。结果,上传到 oss.sonatype.com 后,nexus 拒绝发布并出现验证错误,因为缺少 javadoc jar。
dokka 是否与 maven 发布插件集成?
我最近将一个 java 组件迁移到了 kotlin。到目前为止,当我使用maven发布插件时,它也自动生成了javadoc,并且它也被上传到了oss.sonatype.com。另一方面,Dokka 似乎没有与开箱即用的发布插件集成。结果,上传到 oss.sonatype.com 后,nexus 拒绝发布并出现验证错误,因为缺少 javadoc jar。
dokka 是否与 maven 发布插件集成?
发现了问题。Dokka 确实具有所需的 maven 目标 ( dokka:javadocJar ),但与 maven-javadoc-plugin 不同,它不受打包生命周期的约束。简单的解决方法是
<plugin>
<groupId>org.jetbrains.dokka</groupId>
<artifactId>dokka-maven-plugin</artifactId>
<version>${dokka.version}</version>
<executions>
<execution>
<phase>prepare-package</phase>
<goals>
<goal>dokka</goal>
<goal>javadoc</goal>
<goal>javadocJar</goal>
</goals>
</execution>
</executions>
<configuration>
<includes>
<file>packages.md</file>
</includes>
</configuration>
</plugin>
使用GradleMavenPush将 Gradle Android Artifacts、Gradle Java Artifacts 和 Gradle Kotlin Artifacts 上传到 Maven 存储库(JCenter、Maven Central、Corporate staging/snapshot 服务器和本地 Maven 存储库)
apply from: 'https://raw.github.com/Vorlonsoft/GradleMavenPush/master/maven-push.gradle'
你可以用它生成 Dokka 文档,它有task androidDokka(type: Exec, dependsOn: dokkaInitializer)
并且task coreDokka(type: Exec, dependsOn: dokkaInitializer)