wam_3000 2024-04-23 10:13 采纳率: 6.7%
浏览 25

springboot整合checkestyle + findbugs

目前我的springboot项目里需要做代码规范和自动化的代码检查,需要整合checkestyle 和 findbugs 这两个工具,请提供一个入门级的,能马上手的教程,最好有截图和文字说明,我用的IDE是vscode,JDK是17+,SpringBoot是3.1+

  • 写回答

5条回答 默认 最新

  • 专家-赤兔[在线] 优质创作者: 编程框架技术领域 2024-04-23 10:13
    关注

    引自免费微信小程序:皆我百晓生

    要将Checkstyle和FindBugs集成到Spring Boot项目中,你需要在项目的pom.xml文件中添加相应的插件配置,并确保你的IDE(这里我们使用VSCode)可以正确地识别并执行这些插件。以下是详细的步骤:

    1. 添加Maven依赖

    首先,在你的pom.xml文件中添加Checkstyle和FindBugs的依赖。在<dependencies>标签内添加以下内容:

    <dependencies>
        <!-- ... -->
        <dependency>
            <groupId>com.puppycrawl.tools</groupId>
            <artifactId>checkstyle</artifactId>
            <version>9.2</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.findbugs</groupId>
            <artifactId>findbugs</artifactId>
            <version>4.0.6</version>
            <scope>provided</scope>
        </dependency>
        <!-- Include the plugin to execute Checkstyle and FindBugs during build -->
        <dependency>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-checkstyle-plugin</artifactId>
            <version>3.1.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-findbugs-plugin</artifactId>
            <version>3.0.5</version>
        </dependency>
        <!-- ... -->
    </dependencies>
    

    2. 配置Checkstyle

    创建一个名为checkstyle.xml的文件到src/main/resources目录下。这是一个示例Checkstyle规则文件,可以根据实际需求进行修改:

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.3//EN"
            "https://www.puppycrawl.com/dtds/configuration_1_3.dtd">
    <module name="Checker">
        <property name="charset" value="UTF-8"/>
        <property name="severity" value="warning"/>
    
        <!-- Checks for whitespace -->
        <module name="FileTabCharacter">
            <property name="eachLine" value="true"/>
        </module>
    
        <!-- Miscellaneous other checks. -->
        <module name="TreeWalker">
            <module name="LeftCurly">
                <property name="option" value="eol"/>
            </module>
            <module name="RightCurly">
                <property name="option" value="same"/>
            </module>
            <!-- ... -->
        </module>
    </module>
    

    3. 配置FindBugs

    同样,创建一个名为findbugs-maven-plugin.xml的文件到src/main/resources目录下,这是基本的FindBugs配置:

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-findbugs-plugin</artifactId>
                    <version>3.0.5</version>
                    <configuration>
                        <effort>Max</effort>
                        <threshold>Low</threshold>
                        <failOnError>true</failOnError>
                        <includeTests>true</includeTests>
                    </configuration>
                    <executions>
                        <execution>
                            <goals>
                                <goal>check</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </build>
    </project>
    

    4. 集成到VSCode

    为了在VSCode中运行Checkstyle和FindBugs,你需要安装以下扩展:

    安装完成后,重启VSCode,它会自动检测并应用代码格式化规则。

    5. 执行代码检查

    在命令行中进入项目根目录,然后运行以下命令来执行Checkstyle和FindBugs检查:

    mvn clean install
    

    这将会编译、测试你的代码,并在过程中执行Checkstyle和FindBugs检查。如果有任何错误,它们会在控制台输出。

    注意:对于更高级的自动化,你可以在持续集成(CI)工具(如Jenkins或GitLab CI)上设置这些检查,以便在每次提交时自动执行。

    以上就是如何在Spring Boot项目中集成Checkstyle和FindBugs的基本步骤。根据你的具体需求,你可能需要进一步调整配置文件,例如添加特定的规则或者排除某些类或包不参与检查。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 4月23日