maven 的 <scope>test</scope> 的 gradle 类似物是什么?

J.J*_*eam 3 unit-testing h2 gradle maven spring-boot

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

<dependency>
      <groupId>com.h2database</groupId>
      <artifactId>h2</artifactId>
      <scope>test</scope>
  </dependency>
Run Code Online (Sandbox Code Playgroud)

应用程序运行时我不需要 h2

用于此目的的 gradle 类似物是什么?

And*_*son 6

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

dependencies {
    testRuntimeOnly 'com.h2database:h2'
}
Run Code Online (Sandbox Code Playgroud)

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