在 intellij 中找不到 spock

Can't find spock inside of intellij

我对 intellij 和 spock 还很陌生。

我正在使用 gradle 向我的 spring 引导项目添加 spock 测试。这是我的 build.gradle:

buildscript {
    ext {
        springBootVersion = '1.4.0.RELEASE'
    }
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
    }
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'spring-boot'

jar {
    baseName = 'theta-server'
    version = '0.0.1-SNAPSHOT'
}
sourceCompatibility = 1.8
targetCompatibility = 1.8

repositories {
    mavenCentral()
}


dependencies {
    compile('org.springframework.boot:spring-boot-starter-actuator')
    compile('org.springframework.boot:spring-boot-starter-data-jpa')
    compile('org.springframework.boot:spring-boot-starter-web')
    testCompile('org.springframework.boot:spring-boot-starter-test')
    testCompile('org.spockframework:spock-core:1.0-groovy-2.4')
}


eclipse {
    classpath {
         containers.remove('org.eclipse.jdt.launching.JRE_CONTAINER')
         containers 'org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8'
    }
}

所以我添加了一个 spock 测试:

package com.heavyweightsoftware.theta.server.controller

/**
 * 
 */
class ThetaControllerTest extends spock.lang.Specification {
    def "Theta"() {

    }
}

但我无法 运行 在我的 intellij 环境中进行测试,因为它说 "cannot resolve symbol 'spock'"

构建 运行 直接没问题。

有时,IJ 可能不会在某些更改后更新项目类路径。 Maven POM filesGradle build files 似乎都发生了这种情况。通常,通过使用相应工具 window (maven, gradle):

强制与 Reimport all gradle/maven projects 按钮同步可以轻松解决此问题