0

我正在尝试在使用 Kotlin 和detekt-maven-plugin的多模块 Maven 项目中使用 detekt 。

按照此处找到的说明生成包含现有问题的基线,我尝试运行:

mvn detekt:cb -Ddetekt.debug=true

然而,这似乎不会产生提到的baseline.xml文件。

4

1 回答 1

0

事实证明,基线文件名必须在生成基线时指定:

mvn detekt:cb -Ddetekt.baseline=baseline.xml

由于代码库已经有很多 detekt 发现的问题,我还必须使用自定义 detekt 配置文件并增加允许的问题数量 - 否则构建将失败并且根本不会生成基线。

总而言之,以下配置使其工作:

检测配置文件:

build:
  maxIssues: 1000

生成基线后的插件配置:

        <plugin>
            <groupId>com.github.ozsie</groupId>
            <artifactId>detekt-maven-plugin</artifactId>
            <version>1.1.1</version>
            <configuration>
                <baseline>detekt-baseline.xml</baseline>
                <config>detekt-config.yml</config>
                <buildUponDefaultConfig>true</buildUponDefaultConfig>
            </configuration>
            <executions>
                <execution>
                    <phase>verify</phase>
                    <goals>
                        <goal>check</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

生成基线后,maxIssuses可以将配置文件中的值降低到适当的值。

于 2020-01-17T08:51:59.937 回答