如何使用 dokka 生成用于存储库上传的 javadoc jar?

koc*_*cka 3 nexus maven maven-release-plugin kotlin kotlin-dokka

我最近将一个 java 组件迁移到 kotlin。到目前为止,当我使用maven发布插件时,它也自动生成了javadoc,并且也上传到了oss.sonatype.com。另一方面,Dokka 似乎没有与开箱即用的发布插件集成。结果,上传到 oss.sonatype.com 后,nexus 拒绝发布并出现验证错误,因为 javadoc jar 丢失。

关联验证结果

dokka 是否与 Maven 发布插件集成?

koc*_*cka 7

发现问题了。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>
Run Code Online (Sandbox Code Playgroud)