gpt4 book ai didi

java - 如何使用 Maven FindBugs 生成 HTML 报告?

转载 作者:太空宇宙 更新时间:2023-11-04 13:38:19 25 4
gpt4 key购买 nike

我知道有人问过类似的问题here ,但我在 pom.xml 中的设置有点不同,并且该答案不适用于我的情况。

我设置了 findbugs,这样当我运行 [mvncompile findbugs:findbugs] 时,我会生成默认的 findbugsXML.xml。我想生成一个 html 文件,以便它更具可读性。以下是我添加到 pom.xml 中以便设置 findbugs 的内容。我不确定为什么没有生成 html 文件,因为我在进行 pom.xml 编辑时已包含该规范。以下内容已添加到 pom.xml 中 build 的插件部分中。

<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>

<artifactId>findbugs-cookbook</artifactId>
<packaging>jar</packaging>
<version>3.0.1</version>
<name>FindBugs Maven plugin Cookbook</name>
<description>FindBugs Maven plugin Cookbook</description>
<licenses>
<license>
<name>Apache License 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0</url>
</license>
</licenses>
<properties>
<jdk.version>1.7</jdk.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

<build>
<finalName>findbugs</finalName>
<resources>
<resource>
<filtering>true</filtering>
<directory>src/main/resources</directory>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>3.0.1</version>
</plugin>
<!--</plugins>
<plugins> -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>${jdk.version}</source>
<target>${jdk.version}</target>
<encoding>${project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.0.1</version>
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>3.0.1</version>
<configuration>
<effort>Max</effort>
<failOnError>false</failOnError>
<findbugsXmlOutputDirectory>${project.build.directory}/findbugs</findbugsXmlOutputDirectory>
<threshold>Low</threshold>
<xmlOutput>true</xmlOutput>
</configuration>
<executions>
<execution>
<id>analyze-compile</id>
<phase>compile</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>xml-maven-plugin</artifactId>
<version>1.0</version>
<configuration>
<transformationSets>
<transformationSet>
<dir>${project.build.directory}/findbugs</dir>
<outputDir>${project.build.directory}/findbugs</outputDir>

<!--<stylesheet>fancy-hist.xsl</stylesheet> -->
<!--<stylesheet>default.xsl</stylesheet> -->
<!--<stylesheet>plain.xsl</stylesheet>-->
<!--<stylesheet>fancy.xsl</stylesheet>-->
<!--<stylesheet>summary.xsl</stylesheet>-->

<fileMappers>
<fileMapper
implementation="org.codehaus.plexus.components.io.filemappers.FileExtensionMapper">
<targetExtension>.html</targetExtension>
</fileMapper>
</fileMappers>
</transformationSet>
</transformationSets>
</configuration>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>transform</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>findbugs</artifactId>
<version>3.0.1</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>

我使用的是 Apache Maven 3.2.3 和 Java 版本:1.8.0_20。我还在我的 apache-maven-3.2.3 目录中包含了 findbugs-3.0.1.jar 和 findbugs-maven-plugin-3.0.1.jar 。

最佳答案

有 4 个变量:

  • java/JDK 版本
  • maven 版本
  • findbugs 插件版本
  • findbugs 版本

使用java-1.7,它可以在我的Windows系统上使用指定版本的maven、findbugs、findbugs-maven-plugin运行。本质上旧版本的 findbugs 不适用于 java 8。

对于java-1.8,如果我使用findbugs和findbugs-maven-plugin的3.0.1版本,它就可以工作。

由于您有绑定(bind) findbugs 目标来执行compile 任务,因此您只需运行mvn cleancompile

关于java - 如何使用 Maven FindBugs 生成 HTML 报告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31466951/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com