Java 11下Maven Javadoc插件生成的Oracle Javadoc链接异常问题
解决JDK 11 Javadoc外部链接模块路径缺失问题
当前使用给定的Maven Javadoc插件配置生成文档时,JDK类的跳转链接未包含模块路径(如java.base),导致指向错误地址。只需调整插件配置,添加官方文档链接并优化模块相关参数即可解决:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>3.4.1</version> <configuration> <source>11</source> <show>private</show> <nohelp>false</nohelp> <destDir>javadocs</destDir> <attach>true</attach> <includeDependencySources>false</includeDependencySources> <!-- 添加JDK 11官方文档链接,自动处理模块路径跳转 --> <links>https://docs.oracle.com/en/java/javase/11/docs/api/</links> <!-- 移除干扰模块路径解析的参数 --> <!-- <additionalJOption>--no-module-directories</additionalJOption> --> </configuration> </plugin>
关键调整说明:
- 添加
<links>配置项:指定JDK 11官方文档根地址后,插件会自动根据模块信息生成带模块路径的跳转链接(如java.base/java/lang/String.html)。 - 移除
--no-module-directories参数:该参数会禁用模块目录识别,导致插件无法正确解析JDK类所属模块,进而生成错误链接路径。
若必须保留--no-module-directories,可尝试添加--link-module参数手动指定模块文档地址:
<additionalJOption>--link-module java.base=https://docs.oracle.com/en/java/javase/11/docs/api/java.base/</additionalJOption>
内容的提问来源于stack exchange,提问作者Abhishek Surve
相关产品推荐
相关产品推荐

