Eclipse中Ant Javadoc配置public级别仍报私有字段无注释警告问题
Javadoc任务触发私有字段无注释警告的特殊场景
在Eclipse 2022-09(4.25.0)环境下执行配置了<javadoc access="public">的Ant Javadoc任务时,出现部分私有字段无注释的警告,但存在以下特殊表现:
- 仅部分私有字段触发警告,并非全部
- 无注释的私有方法不会触发任何报错
经代码排查,明确触发警告的条件:
- 子类继承了实现
java.io.Serializable接口的抽象父类 - 子类中的非静态私有字段无注释时,会触发该警告
- 移除父类的
Serializable接口实现后,警告消失 - 私有静态字段即使无注释,也不会触发警告
代码示例
public abstract class TestAbstract implements java.io.Serializable { /** Our serialization ID */ public static final long serialVersionUID = 12; } /** * Comment. */ public class TestCredential extends TestAbstract { /** UID */ public static final long serialVersionUID = 12; private static final String defaultString = "public"; private boolean verified = false; /** * Constructor */ public TestCredential() { } }
警告信息
[javadoc] D:\workspace_12\...\TestCredential.java:13: warning: no comment [javadoc] private boolean verified = false; [javadoc] ^
Ant配置示例
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <project default="javadoc"> <target name="javadoc"> <javadoc access="public" author="false" destdir="d:..." doctitle="NMS Core" classpath="..." noqualifier="all" nodeprecated="true" nodeprecatedlist="true" noindex="false" nonavbar="false" notree="false" Public="true" sourcefiles=" com\logikos\core\credentials\TestCredential.java " source="12" splitindex="false" use="false" version="false"/> </target> </project>
使用的Doclet版本:[javadoc] Standard Doclet version 17.0.5+8
内容的提问来源于stack exchange,提问作者Robert
相关产品推荐
相关产品推荐

