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

分析java代码时检查样式错误

公良浩邈
2023-03-14

我得到了这个错误时启动检查风格分析在Spring引导应用程序:

SpringBootBackend.java:7:1  error: Les classes utilitaires ne doivent pas avoir de constructeur par défaut ou public.

代码

  public class SpringBootBackend{

public static void main(String[] args) {

    SpringApplication.run(SpringBootBackend.class, args);
   }
}

有什么帮助吗?

共有3个答案

西门智
2023-03-14

创建一个配置文件,禁止对文件进行检查,checkstyle suppressions。xml

 <?xml version="1.0"?>

<!DOCTYPE suppressions PUBLIC
        "-//Puppy Crawl//DTD Suppressions 1.0//EN"
        "http://www.puppycrawl.com/dtds/suppressions_1_0.dtd">

<suppressions>
    <suppress files="SpringBootApplication.java" checks="HideUtilityClassConstructor" />
</suppressions>

在插件配置中,添加checkstyle-suppressions.xml的位置

    <configuration>
        <configLocation>quality/checkstyle.xml</configLocation>
        <suppressionsLocation>quality/checkstyle-suppressions.xml</suppressionsLocation>
田兴朝
2023-03-14

虽然从checkstyle的角度来看,前面的答案在技术上是正确的,但它在这种情况下不起作用,因为Spring Boot将尝试创建此类的实例,并且由于private构造函数而失败。

在本例中,我决定使用注释来抑制这种冲突:

@SuppressWarnings("checkstyle:hideutilityclassconstructor")
public static void main(String[] args) {
辛意智
2023-03-14

通过此检查,只包含静态方法的类被视为“实用程序类”。这样的类应该只有私有构造函数,这样它们就不会被意外地实例化。它们也应该是最终的。

因此,您可以添加这样的构造函数:

java prettyprint-override">private SpringBootBackend() {}

并可能声明类最终,错误应该消失了。

 类似资料:
  • 我为跳棋游戏创建了两个类。一个是木板,另一个是碎片。我所面临的困难是,对于这些碎片,我似乎无法让它们移动,也无法让它们正确地停留在那个位置,事实上,由于我不了解这里到底出了什么问题,我无法再前进了。有人能纠正我做错了什么吗。 这是拼图课

  • GradleSpring引导代码分析使用SonarQube通过Jenkins抛出错误。 我在Gradle spring boot项目的根目录下有我的sonar-project.properties文件,其中有以下详细信息 在Jenkins中的“全局工具配置”下,SonarQube扫描器配置为 在Jenkinsfile中,阶段定义为 运行作业时,会出现以下错误 显然sonar.java.binari

  • 大家好,我有一个模拟ATM机的程序。它使用我创建的account类,在用户输入0到999999之间的id后,为用户生成一个帐户。然后,他们可以执行各种任务,如查看余额、取款、存款等。不过,我在检查程序时遇到了一个问题。它编译时没有错误,并且第一次通过循环时,它工作得非常完美。但是,如果他们点击退出并输入另一个无效id,它会显示两次无效输入消息。我复制了下面发生的事情的控制台。有人能给我解释一下为什

  • /redis/script/redis-sampler.rb 127.0.0.1 6379 0 10000 /redis/script/redis-audit.rb 127.0.0.1 6379 0 10000

  • 是否可以通过查看代码来判断一个异常类是选中的还是未选中的?我一直认为,如果它扩展了Exception,那么它就会被选中,但是RuntimeException扩展了Exception,那么它就会被取消选中。RuntimeException可能是唯一一个改变了经验法则的类,如果不扩展RuntimeException的话,其他未经检查的异常也必须扩展Throwable。但是,我看不出RuntimeExc

  • Go 代码检查 统计代码行数 推荐我开发的开源软件--artHummer,目前只是简单的统计代码,后续可能开发更加复杂的功能。 go report 如果您的代码是放在github上面的,可以登录go report 进行代码扫描。 gofmt 整理代码 gofmt -l -w -s *.go gofmt -r '(a)->a' -l -w *.go go tool vet 这个