gpt4 book ai didi

所有 REST @GET 方法的 PMD 违规SuppressXPath?

转载 作者:行者123 更新时间:2023-12-04 21:08:36 27 4
gpt4 key购买 nike

我正在尝试缩小 PMD 规则的范围,如何从 PMD 检查中排除所有用 @GET 注释的 REST 方法?

最佳答案

PMD 提供了几种抑制警告的方法:http://pmd.sourceforge.net/pmd-5.2.3/usage/suppressing.html

  • 通过注释:@SuppressWarnings("PMD.")
  • 通过评论://NOPMD 忽略此
  • 根据规则通过 Regex 和 XPath

  • 您还可以排除完整文件 - 参见 http://pmd.sourceforge.net/pmd-5.2.3/customizing/howtomakearuleset.html - 从规则集中排除文件

    对于您的情况, violationSuppressXPath ,这个 XPath 表达式应该可以工作:
    ./ancestor::ClassOrInterfaceBodyDeclaration/Annotation/MarkerAnnotation/Name[@Image='GET']

    这将从当前节点(可能在方法内部)上升(祖先)到方法声明(“ClassOrInterfaceBodyDeclaration”),并从那里沿着树向下检查 @GET 注释。但是,我不知道性能影响。

    更新:

    完整示例:
    <rule ref="rulesets/java/optimizations.xml/MethodArgumentCouldBeFinal">
    <properties>
    <!-- Ignore Rest resources -->
    <property name="violationSuppressXPath" value="
    ./ancestor::ClassOrInterfaceBodyDeclaration/Annotation/MarkerAnnotation/Name
    [@Image='GET' or @Image='POST' or @Image='PUT' or @Image='DELETE']" />
    </properties>
    </rule>

    关于所有 REST @GET 方法的 PMD 违规SuppressXPath?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28331272/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com