上传Java库至Maven Central后Javadoc丢失问题求助
解决Maven Central上传后Javadoc丢失的问题
问题根源
你当前的maven-javadoc-plugin仅配置了JDK源码版本,但未绑定到Maven构建生命周期,也未启用Javadoc Jar的生成与上传逻辑。Maven默认不会自动将Javadoc作为构建产物部署到仓库,必须显式配置插件执行相关目标。
修复方案
更新maven-javadoc-plugin配置,添加执行阶段绑定,让插件在构建时生成并附加Javadoc Jar:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>3.4.1</version> <configuration> <source>16</source> <!-- 可选:若代码存在未注释元素,开启此项避免构建失败 --> <failOnError>false</failOnError> </configuration> <executions> <execution> <id>attach-javadocs</id> <goals> <goal>jar</goal> </goals> <!-- 绑定到package阶段,确保Javadoc Jar随主Jar一起生成 --> <phase>package</phase> </execution> </executions> </plugin>
可选:同时上传源码Jar(推荐)
若希望用户能查看源码,可添加maven-source-plugin配置,和Javadoc一起部署:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <version>3.2.1</version> <executions> <execution> <id>attach-sources</id> <goals> <goal>jar-no-fork</goal> </goals> <phase>package</phase> </execution> </executions> </plugin>
验证与重新部署
- 本地构建验证:执行
mvn clean package,检查target目录下是否生成java-tf-1.2-SNAPSHOT-javadoc.jar(及-sources.jar,若配置了源码插件)。 - 重新部署:执行
mvn clean deploy。 - 等待仓库同步(快照仓库通常几分钟内完成),在IntelliJ中重新导入依赖即可看到Javadoc。
补充检查点
- 确认
settings.xml中ossrh仓库的凭据正确且拥有部署权限。 - 检查Sonatype对应版本目录,确认
-javadoc.jar已上传成功。
内容的提问来源于stack exchange,提问作者Cem Pamir Bana
相关产品推荐
相关产品推荐

