我有以下课程:
import javax.annotation.PostConstruct;
public class PmdUnusedMethod {
private void unusedMethod() {
}
@PostConstruct
private void postConstructAnnotatedMethod() {
}
}
和定义的PMD规则集:
<rule ref="rulesets/java/unusedcode.xml"/>
在这种情况下,PMD向我报告有关未使用方法的两个错误(“unusedMethod”和“postConstructAnnotatedMethod”),但我想忽略使用@PreDestroy和@PostConstruct注释的方法的规则“UnusedPrivateMethod”。
我知道我可以做这样的事:
<rule ref="rulesets/java/unusedcode.xml">
<exclude name="UnusedPrivateMethod"/>
</rule>
<rule ref="rulesets/java/unusedcode.xml/UnusedPrivateMethod">
<properties>
<property name="violationSuppressXPath"
value="//ClassOrInterfaceBodyDeclaration/Annotation/MarkerAnnotation/Name[@Image='PostConstruct']"/>
</properties>
</rule>
但在这种情况下,PMD跳过检查该规则,检查类中所有包含my注释的方法,而不仅仅是使用@PostConstruct注释的方法。我希望在检查代码后,我的“unusedMethod”只有错误,PMD不会通知“postConstructAnnotatedMethod”的错误。
我想这样做:
<rule ref="rulesets/java/unusedcode.xml/UnusedPrivateMethod">
<properties>
<property name="violationSuppressXPath"
value="//MethodDeclaration/Annotation/Name[@Image='PostConstruct']"/>
</properties>
</rule>
仅跳过使用所需注释注释的方法,而不是所有方法。
此外,我不想用许多@SuppressWarnings(“PMD.UnusedPrivateMethod”)
注释污染我的代码。
以违规所在的节点为起点执行抑制XPath,因此您可以简单地“上到一个方法,检查注释”。
例如:
<rule ref="rulesets/java/unusedcode.xml/UnusedPrivateMethod">
<properties>
<property name="violationSuppressXPath"
value="./ancestor::ClassOrInterfaceBodyDeclaration/Annotation/MarkerAnnotation/Name[@Image='PostConstruct']"/>
</properties>
</rule>
我正在为Java11实现一个模块,并希望使用JSR250中的注释(javax.annotation.PostConstruct和javax.annotation.PreDestroy)。 我已经更改了根据依赖项从: 对此: 这个工件此行: 因此,我尝试将其添加到我的模块信息中。java文件: 但是,我得到了一个错误的导入: 错误消息是: 我已经研究了以下相关问题,但仍无法解决我的问题: 我不能在J
我有一个包含三个字段的表,比如a、b、c。我想添加一个约束,确保如果a不为null,那么b和c也不为null。我已经使用以下SQL完成了这项工作 使用hibernate注解@Check有没有办法达到同样的效果? 我找不到一个有用的注释示例,开发人员倾向于根本不使用它吗?
问题内容: 我认为我误会了read_csv的意图。如果我有文件“ j”,例如 我如何pandas.read_csv这个文件,跳过任何’#’注释行?我在帮助行的注释中看到它不被支持,但是它指示应该返回一个空行。我看到一个错误 CParserError:标记数据时出错。C错误:第2行中应有1个字段,看到了3个 我目前在 在版本‘0.12.0-199-g4c8ad82’上: CParserError:标
我想我误解了阅读的意图。如果我有一个像“j”这样的文件 我怎样才能看到熊猫。读取此文件,跳过任何“#”注释行?我在帮助中看到,不支持行的“注释”,但它表示应返回空行。我看到一个错误 数据标记化出错。C错误:预期第2行中的1个字段,锯3 我现在在 在版本“0.12”上。0-199-g4c8ad82': 数据标记化出错。C错误:预期第2行中的1个字段,锯3
对于用@X注释的类中的方法或用@X注释的方法,我需要一个切入点。我还需要注释对象。如果类和方法都被注释,我更喜欢将方法注释作为参数。 我尝试了以下操作,这会产生“绑定不一致”的警告。(为什么不直接将其设置为null?) 以下内容创建了“穿过切入点中的“||”的参数x的不明确绑定”警告。(在我看来,这不一定有意义:为什么不绑定第一个短路评估?) 如果存在类和方法注释,则将前面的尝试拆分为两个,自然会
我正在尝试为我的类禁用几个任意PMD警告。 如何列出要忽略的几个PMD规则?我无法用谷歌找到。 它给出了Eclipse编译时错误: 这是可编译的,但被忽略了 这 结果是 Eclipse配置为接受PMD类型: 不支持@SuppressWarnings("PMD. DoNotCallSystemExit")