调用 Class.getAnnotation() 方法时出现的异常的行为更改

方法 java.lang.Class.getAnnotation() 之前抛出了错误的 java.lang.ArrayStoreException 当注解的数组值引用了一个缺失的类时。 在Java11 中,该调用会导致 java.lang.TypeNotPresentException 当注解的数组值引用了一个缺失的类时。 评估 catch 块中的逻辑,以了解是否还需要处理 TypeNotPresentException 或更常规的运行时异常类型。

该规则标记调用 java.lang.Class.getAnnotation() 方法调用被一个 try 语句 catch 条款 ArrayStoreException.

该规则有一个自动修复功能,以取代 ArrayStoreException 以及 TypeNotPresentException 在 try/catch 中使用 Class.getAnnotation().将自定义配置复制到应用程序构建文件,以启用修复自动化。

要了解 Javadoc 类,请参阅 Class。 有关 Java SE 11 更改的更多信息,请参阅 Removed Features and Options in JDK 11