我在 idea 中新建了一个多模块的 maven 项目(模块 A 和模块 B ),现在是模块 B 中写了以下单元测试代码:
@SpringBootTest(classes = CodeGeneratorApplication.class)
public class CodeGeneratorTests {
@Test
public void generator() {
// 单元测试代码省略
}
现在有个问题是,只要执行过一次这个单元测试,那么一旦在任何模块中修改了代码,idea 就会立即自动编译并自动运行这个单元测试,例如修改了模块 A 的代码(模块 A 和模块 B 之间没有依赖关系),即使是按了下 Tab 键,idea 也会立即自动编译并自动运行这个单元测试,已经确认“Toggle 'Skip Tests' Mode”是按下状态。
模块 A 的 pom.xml 文件中 build 部分内容为:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring-boot.version}</version>
<configuration>
<mainClass>com.xxx.cloud.uas.UasApplication</mainClass>
<skip>true</skip>
</configuration>
<executions>
<execution>
<id>repackage</id>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
模块 B 的 pom.xml 文件中 build 部分内容为:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring-boot.version}</version>
<configuration>
<mainClass>com.xxx.code.generator.CodeGeneratorApplication</mainClass>
<skip>true</skip>
</configuration>
<executions>
<execution>
<id>repackage</id>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.