使用 JqAssistant 分析@SuppressWarnings

Analyzing @SuppressWarnings with JqAssistant

我们正在使用 SonarQube zu 分析我们的代码库,有时只需要使用 @SuppressWarnings-Annotation 将 SonarQube 中的问题标记为误报。

当然,我们希望将此注释的使用限制在已定义的情况下,并且完全禁止某些 SonarQube 规则使用它(因为它不应该轻易用于绕过任何规则)。

因此,我们正在考虑使用 jqAssitant 扫描和分析 @SuppressWarnings 以查找不允许的用法。

但是在扫描后注释似乎不存在于 jqAssistant 中,我的猜测是因为 RetentionPolicy.SOURCE 被 SuppressWarnings 使用:

@Retention(RetentionPolicy.SOURCE)
public @interface SuppressWarnings {

有什么方法可以在扫描结果中包含注释吗?

谢谢, 汤姆

jQA 目前只扫描 Java 类 的字节码,对于这个注解我们需要一个源代码扫描器。所以我现在看到的唯一机会是用保留 RUNTIME 定义你自己的注释并对其进行过滤。