Specs2" value in不是String"的成员。

时间:2014-12-24 21:47:23

标签: scala gradle specs2

我无法编译简单的specs2 hello world示例:

import org.junit.runner.RunWith
import org.specs2.Specification
import org.specs2.runner.JUnitRunner

import org.specs2.mutable._

@RunWith(classOf[JUnitRunner])
class SampleTest extends Specification {

  "The 'Hello world' string" should {
    "contain 11 characters" in {
      "Hello world" must have size(11)
    }
    "start with 'Hello'" in {
      "Hello world" must startWith("Hello")
    }
    "end with 'world'" in {
      "Hello world" must endWith("world")
    }
  }
}

获取错误:

  

:compileTestScala [ant:scalac]元素'/ home / ~~~~ / workspaces / ~~~~ / build / resources / main'不存在。
  [ant:scalac] /home/~~~~/workspaces/~~~~/src/test/scala/com/~~~~/ingestion/SampleTest.scala:16:   错误:value in不是String的成员
  [ant:scalac]“包含11个字符”{
  [ant:scalac]发现一个错误   :compileTestScala失败

我正在使用Gradle(因此使用@RunWith注释)。使用specs2版本'org.specs2:specs2_2.10:2.4.15'

apply plugin: 'java'
apply plugin: 'scala'

repositories {
    mavenCentral()
    maven {
        url "http://dl.bintray.com/scalaz/releases"
    }
}

configurations {
    provided
    compile.extendsFrom provided
}

dependencies {
    provided 'org.apache.hadoop:hadoop-client:2.2.0'

    compile 'org.scala-lang:scala-library:2.10.0',
            'com.twitter:scalding-core_2.10:0.12.0',
            'com.github.scopt:scopt_2.10:3.2.0',
            'org.json4s:json4s-jackson_2.10:3.2.11',

            'args4j:args4j:2.0.29',
            'joda-time:joda-time:2.4',
            'log4j:log4j:1.2.17',
            'org.apache.commons:commons-compress:1.9',
            'org.apache.commons:commons-lang3:3.3.2',
            'org.codehaus.jackson:jackson-core-asl:1.9.13'


    testCompile 'junit:junit:4.11',
                'org.mockito:mockito-all:1.9.5',
                'org.specs2:specs2_2.10:2.4.15'
}

jar {
    dependsOn configurations.runtime
    from {
        (configurations.compile - configurations.provided).collect {
            it.isDirectory() ? it : zipTree(it) 
        }
    }
}

2 个答案:

答案 0 :(得分:14)

您需要为该语法扩展org.specs2.mutable.Specification而不是org.specs2.Specification

答案 1 :(得分:1)

如果您需要特征,请使用org.specs2.mutable.SpecificationLike

相关问题