Java 我如何抑制checkstyle消息;实用程序类不应具有“默认构造函数”的公共;使用弹簧时

Java 我如何抑制checkstyle消息;实用程序类不应具有“默认构造函数”的公共;使用弹簧时,java,spring,Java,Spring,在Spring Java项目中,我有以下类: @SuppressWarnings({"PMD", "Checkstyle"}) @SpringBootApplication public class ToolBoxApplication { public static void main(final String[] args) { SpringApplication.run(ToolBoxApplication.class, args); } } 使用Jen

在Spring Java项目中,我有以下类:

@SuppressWarnings({"PMD", "Checkstyle"})
@SpringBootApplication
public class ToolBoxApplication {

    public static void main(final String[] args) {
        SpringApplication.run(ToolBoxApplication.class, args);
    }
}
使用Jenkins构建告诉我,在实用程序类中不应该有公共或默认构造函数

在我的checkstyle.xml和Treewalker文件中

<!-- Make the @SuppressWarnings annotations available to Checkstyle -->
<module name="SuppressWarningsHolder" />

和模块

我试着通过使用

@SuppressWarnings({“PMD”,“checkstyle:HideUtilityClassConstructor”})

但这也不起作用。
“PMD”抑制确实有效(它实际上报告了相同的错误)。

抑制时,需要以小写形式指定checkstyle名称。这就行了

@SuppressWarnings({"PMD", "checkstyle:hideutilityclassconstructor"})

也可以添加虚拟方法以避免该规则:

public void foo() {
    throw new UnsupportedOperationException();
}

我们有多个spring引导应用程序,因此不需要添加多个
@SuppressWarnings
注释,我们配置了一个checkstyle抑制过滤器,并添加了以下抑制:

<!-- Spring Boot Application files get detected as utility classes and checkstyle wants them to have a private constructor, but a constructor is required to run the application. By convention application classes end with *Application -->
<suppress checks="HideUtilityClassConstructor" files=".*Application.java"/>


试试这个
@SuppressWarnings({“PMD”,“checkstyle:hideutilityclassconstructor”})
谢谢你的pvpkiran,它解决了这个问题。我会把它添加为一个答案,但我的声誉不够高,无法显示。是的,接受。抱歉,这是新的。