当前位置: 首页 > 知识库问答 >
问题:

Java的checkstyle,MagicNumberCheck

尹俊贤
2023-03-14

我正在使用checkstyle获取关于我的源代码的报告。这个问题是关于MagicNumberCheck的。

我正在使用Date/(org.joda.)DateTime在我的源代码中如下所示:

DateTime dateTime = new DateTime(2013, 2, 27, 23, 0):
dateTime.plusHours(57);

如果魔法数字在某个日期或日期时间内,有没有办法抑制MagicNumberCheck通知?


共有2个答案

詹甫
2023-03-14

您可以使用注释来抑制CheckStyle通知

//CHECKSTYLE:OFF

在那些台词和

//CHECKSTYLE:ON

之后重新启用它。

这需要启用模块SuppressionCommentFilter。

当然,您也可以创建自己的模块,它完全按照您的要求工作。

纪勇军
2023-03-14

可以使用SuppressionCommentFilter检查来执行此操作。

配置属性值,如(在checkstyle配置文件中)

<module name="SuppressionCommentFilter">
  <property name="offCommentFormat" value="Check\:OFF\: ([\w\|]+)"/>
  <property name="onCommentFormat" value="Check\:ON\: ([\w\|]+)"/>
  <property name="checkFormat" value="$1"/>
</module>

现在,对于所需的行,您可以这样做

//Check:OFF: MagicNumber
DateTime dateTime = new DateTime(2013, 2, 27, 23, 0):
dateTime.plusHours(57);
//Check:ON: MagicNumber

这只会抑制MagicNumber检查,其余检查将在此处工作。

你也可以取消多重检查,比如

//Check:OFF: MagicNumber|Indentation
Code Here
//Check:ON: MagicNumber|Indentation

这将仅禁止MagicNumber和缩进检查。其他检查会正常工作。

 类似资料:
  • 我需要在Eclipse中为一个开发项目使用PMD、Findbugs和Checkstyle。Java6足以使用这些工具吗?或者我需要java 7?

  • 我有个表情就像 不幸的是,检查风格不喜欢这样。我如何简化它以满足检查风格?

  • CheckStyle是SourceForge下的一个项目,提供了一个帮助JAVA开发人员遵守某些编码规范的工具。它能够自动化代码规范检查过程,从而使得开发人员从这项重要,但是枯燥的任务中解脱出来。 CheckStyle检验的主要内容 &middot;Javadoc注释 &middot;命名约定 &middot;标题 &middot;Import语句 &middot;体积大小 &middot;空白

  • 安装地址:http://eclipse-cs.sourceforge.net/update The eclipse-cs Checkstyle plug-in integrates the well-known source code analyzer Checkstyle into today's leading IDE - Eclipse.

  • 问题内容: 我们正在将静态分析工具引入Java产品的构建系统中。我们正在使用Maven2,因此Checkstyle和PMD集成是免费提供的。但是,就执行基本样式规则而言,这两个工具之间似乎在功能上有很大的重叠。 同时使用这两者有好处吗?如果一个工具可以工作,我不想维护两个工具。如果选择一种,应该使用哪一种,为什么? 我们还计划使用FindBugs。还有其他静态分析工具值得我们关注吗? 更新: 共识