Java8环境下的Maven javadoc插件的配置

本文记录了在使用Maven进行代码发布时,因Javadoc生成失败导致的问题及排查过程。作者通过更新插件版本和调整Java版本尝试解决问题,最终发现是Java 8新增的DocLint特性引起,并给出了相应的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题

今天用maven在release代码时,又出现新的问题了,生成javadoc出现异常,导致release失败。

 

Refer to the generated Javadoc files in './target/site/apidocs' dir.

org.apache.maven.reporting.MavenReportException:

Exit code: 1 -./src/main/java/com/github/tonydeng/commons/utils/DigestUtils.java:30: 警告: input没有 @param

public static String sha1ToHex(String input) {

^

./src/main/java/com/github/tonydeng/commons/utils/DigestUtils.java:30: 警告: 没有 @return

配置

javadoc的插件配置是这样

 

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-javadoc-plugin</artifactId>

<version>2.9.1</version>

<executions>

<execution>

<id>attach-javadocs</id>

<phase>install</phase>

<goals>

<goal>jar</goal>

</goals>

</execution>

</executions>

<configuration>

<encoding>UTF-8</encoding>

<charset>UTF-8</charset>

</configuration>

</plugin>

排查

之前这个配置工作都很正常,让我百思不得其解。

那怎么办?

嗯,先升级一下maven-javadoc-plugin看看,升级到最新的2.10.3。

还是不行,回退java版本到java7。

哦,这样就可以了。看来应该是java8加了对javadoc的新的特性,我没有关注到。

OK,找到线索了,那就查查看。

先看看Java8的特性列表吧。果然,Java8添加了一个Javadoc注释内容检查的特性DocLint

DocLint提供了一种方法来检测Javadoc的注释中的错误,希望能够在开发周期的早期和容易链接回源代码的方式。

解决

如果想忽略DocLint的使用,可以在maven-javadoc-plugin的配置中加上对DocLint的忽略。

最后的配置如下:

 

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-javadoc-plugin</artifactId>

<version>2.10.3</version>

<executions>

<execution>

<id>attach-javadocs</id>

<phase>install</phase>

<goals>

<goal>jar</goal>

</goals>

</execution>

</executions>

<configuration>

<encoding>UTF-8</encoding>

<charset>UTF-8</charset>

<additionalparam>-Xdoclint:none</additionalparam>

</configuration>

</plugin>

转载于:https://my.oschina.net/yu120/blog/1547484

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值