0

我找不到如何设置 jqassistant-maven-plugin 来验证多模块 maven 项目的 java 插件中的规则。

jqassistant 文档中没有太多关于如何配置插件的内容。我也看不到我必须运行什么目标才能看到一些带有 java 规则分析结果的报告。

我将此添加到我的根 pom.xml

        <plugin>
            <groupId>com.buschmais.jqassistant</groupId>
            <artifactId>jqassistant-maven-plugin</artifactId>
            <version>1.9.0</version>
            <configuration>
                <useExecutionRootAsProjectRoot>true</useExecutionRootAsProjectRoot>
            </configuration>
            <dependencies>
                <dependency>
                    <groupId>com.buschmais.jqassistant.plugin</groupId>
                    <artifactId>java</artifactId>
                    <version>1.9.0</version>
                </dependency>
            </dependencies>
        </plugin>

当我执行

  1. mvn 干净安装
  2. mvn jqassistant:scan
  3. mvn jqassistant:analyze

我从来没有看到任何看起来像 jqassistant 输出的东西,除了一个不包含任何有用内容的 xml 文件:

<?xml version="1.0" encoding="UTF-8"?>
<jqassistant-report xmlns="http://schema.jqassistant.org/report/v1.8"></jqassistant-report>

当我运行 mvn jqassistant:effective-rules 时,它总是给出以下结果:

[INFO] Groups [0]
[INFO] Constraints [0]
[INFO] Concepts [0]

谁有一个工作的例子?

4

1 回答 1

1

jQAssistant 带有一组非常有限的规则,可以开箱即用地应用来验证常见错误(即约束)。至此,Java 插件主要提供了创建自己的约束时可以使用的概念。

有一个例外,那就是 Spring 插件。如果使用 Spring 框架,它带有一组约束来强制执行最佳实践。尽管如此,需要激活约束,最好的方法是激活其中一个组spring-boot:Defaultspring-boot:Strict

<plugin>
    <groupId>com.buschmais.jqassistant</groupId>
    <artifactId>jqassistant-maven-plugin</artifactId>
    <version>1.9.0</version>
    <executions>
        <execution>
            <id>default-cli</id>
            <goals>
                <goal>scan</goal>
                <goal>analyze</goal>
            </goals>
            <configuration>
                <groups>
                    <group>spring-boot:Strict</group>
                    <!--
                    <group>spring-boot:Default</group>
                    -->
                    <group>Default</group>
                </groups>
            </configuration>
        </execution>
    </executions>
</plugin>

(见https://101.jqassistant.org/getting-started-spring-boot-maven/

于 2021-02-05T18:22:01.173 回答