Maven,如何与编译一起运行测试编译

时间:2020-01-31 16:05:20

标签: java maven maven-compiler-plugin

我有一个使用注释处理器的代码,当我编译类适合src/main/java中的类,但是未编译测试(src/test/java)类时,这样我将无法运行自然地进行单元测试,为此,我必须手动运行mvn test-compile命令。

如何配置test-compilemaven-compiler-plugin命令一起运行compile的pom.xml文件?

这是我的构建:


    <build>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.7.0</version>
          <configuration>
            <source>1.8</source>
            <target>1.8</target>
            <compilerArgs>
              <arg>-parameters</arg>
            </compilerArgs>
            <annotationProcessorPaths>
              <path>
                <groupId>io.micronaut</groupId>
                <artifactId>micronaut-inject-java</artifactId>
                <version>${micronaut.version}</version>
              </path>
              <path>
                <groupId>io.micronaut</groupId>
                <artifactId>micronaut-validation</artifactId>
                <version>${micronaut.version}</version>
              </path>
            </annotationProcessorPaths>
          </configuration>
          <executions>
            <execution>
              <id>test-compile</id>
              <goals>
                <goal>testCompile</goal>
              </goals>
              <configuration>
                <compilerArgs>
                  <arg>-parameters</arg>
                </compilerArgs>
                <annotationProcessorPaths>
                  <path>
                    <groupId>io.micronaut</groupId>
                    <artifactId>micronaut-inject-java</artifactId>
                    <version>${micronaut.version}</version>
                  </path>
                  <path>
                    <groupId>io.micronaut</groupId>
                    <artifactId>micronaut-validation</artifactId>
                    <version>${micronaut.version}</version>
                  </path>
                </annotationProcessorPaths>
              </configuration>
            </execution>
          </executions>
        </plugin>
      </plugins>
  </build>

使用apache-maven-3.6.2 + Eclipse 2019-09

2 个答案:

答案 0 :(得分:0)

我不清楚您想要什么。

Maven有生命周期。如果您调用特定的阶段(例如test-compile),则先前的所有阶段也会被自动调用。

因此,如果您想同时编译您的类和测试类,则只需调用mvn test-compile。如果要编译您的类和测试类并运行测试,请调用mvn test

答案 1 :(得分:0)

我只运行命令:mvn clean install