5 回答
TA贡献1850条经验 获得超11个赞
如果您使用maven-pmd-plugin
,它默认会忽略测试。您可以将其配置为includeTests
.
<plugin>
<artifactId>maven-pmd-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
<configuration>
<rulesets>
<ruleset>/my-custom-rules.xml</ruleset> // Your own rules here
</rulesets>
<includeTests>true</includeTests> // Default value is false
</configuration>
</plugin>
关于TooManyStaticImports
规则,就像任何其他 PMD 规则一样,它可能是主观的,并且不一定适合所有用例或代码风格。这就是为什么它说“可能导致混乱的代码”。
一般来说,如果您想静音一个类的规则,您可以使用:
@SuppressWarnings("PMD.TooManyStaticImports")
或者,如果您想微调规则,您可以提供自己的自定义配置,例如:
<rule ref="category/java/codestyle.xml/TooManyStaticImports">
<properties>
<property name="maximumStaticImports" value="6" /> // Default is 4
</properties>
</rule>
TA贡献1757条经验 获得超8个赞
基本上这是不好的做法,因为您引用另一个类的静态字段,在某种程度上您可以从当前文件中寻址静态属性。为了防止出现此 PMD 错误,您必须进行合格的调用。
代替:
BAD_REQUEST;
INTERNAL_SERVER_ERROR;
NOT_FOUND;
UNPROCESSABLE_ENTITY;
称呼:
HttpStatus.BAD_REQUEST;
HttpStatus.INTERNAL_SERVER_ERROR;
HttpStatus.NOT_FOUND;
HttpStatus.UNPROCESSABLE_ENTITY;
TA贡献1811条经验 获得超4个赞
您可以尝试导入上一级。
例如,使用Constant.MY_VAR
而不是直接使用MY_VAR
. 因此,您不必在 Constant 中单独导入每个变量,只需导入 Constant 并使用Constant.MY_VAR
.
添加回答
举报