Spring boot 什么是梯度';maven'的s模拟;s<;范围>;测试</范围>;?

Spring boot 什么是梯度';maven'的s模拟;s<;范围>;测试</范围>;?,spring-boot,maven,unit-testing,gradle,h2,Spring Boot,Maven,Unit Testing,Gradle,H2,当我只想使用h2内存数据库来执行单元测试时,在maven的情况下使用这样的定义: <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>test</scope> </dependency> com.h2数据库 氢 测试 当应用程序运行时,我不需要h

当我只想使用h2内存数据库来执行单元测试时,在maven的情况下使用这样的定义:

<dependency>
      <groupId>com.h2database</groupId>
      <artifactId>h2</artifactId>
      <scope>test</scope>
  </dependency>

com.h2数据库
氢
测试
当应用程序运行时,我不需要h2


为此,gradle的模拟是什么?

H2可能只在运行时由测试需要,即测试类不会针对任何H2类进行编译。在这种情况下,您应该使用
testRuntimeOnly
配置:

dependencies {
    testRuntimeOnly 'com.h2database:h2'
}

对于您的测试类需要编译的依赖项,您应该使用
testImplementation
配置。

H2可能只在运行时由您的测试需要,即您的测试类不会针对任何H2类编译。在这种情况下,您应该使用
testRuntimeOnly
配置:

dependencies {
    testRuntimeOnly 'com.h2database:h2'
}
对于测试类需要编译的依赖项,应该使用
testImplementation
配置