/ / scalatest - не може да разширява макроси, компилирани от предишни версии на Scala - scala, maven, scalatest

scalatest - не може да разширява макросите, съставени от предишни версии на Scala - scala, maven, scalatest

Така че имаме програма Scala (изградена с помощта на Maven), която искаме да тестваме с помощта на Scalatest. Ние работим с Scala 2.11.8 и Scalatest 3.0.1 (опитахме 3.0.3 без успех)

Когато нашите тестове изпълняват нещо с assert() макрос, получаваме следната грешка:

error: can"t expand macros compiled by previous versions of Scala
assert(true)
^

То сочи към true но проблемът е с всичко, което поставяме assert(), Нашият POM има следната зависимост за Scalatest:

<dependency>
<groupId>org.scalatest</groupId>
<artifactId>scalatest_2.11</artifactId>
<version>3.0.1</version>
<scope>test</scope>
</dependency>

Кодът, който се опитваме да изпълним, е:

import org.scalatest.{FlatSpec, _}
import org.junit.runner.RunWith
import org.scalatest.junit.JUnitRunner


@RunWith(classOf[JUnitRunner])
class Testing extends FlatSpec {
//test
var number = 0;
"An empty Set" should "have size 0" in {
assert(true)

}
}

Много хора казват, че това е проблем с използванетоScala 2.11, но включително зависимостта 2.10, но ние използваме 2.11. Всяка помощ ще бъде много оценена. Трябва да отбележа, че я пробвахме с помощта на Scala 2.10 и тя работи.

Отговори:

3 за отговор № 1

тичам mvn dependency:tree и разберете кои зависимости имат _2.10 в него. употреба Управление на зависимостта за да се гарантира, че _2.11 е включен и _2.10 се изключва.