1
我無法從maven內運行我的scalachecks。例如。以下的小文檔片斷ScalaCheck,JUnit以默認生成器中的NoSuchMethod異常結束
@RunWith(classOf[JUnitRunner])
final class MyTest extends FunSuite with Checkers {
test("t2") {
Prop.forAll((a: String, b: String) => (a+b).startsWith(a))
}
}
結束與下面的堆棧轉儲:
java.lang.NoSuchMethodError: scala.runtime.IntRef.zero()Lscala/runtime/IntRef;
at org.scalacheck.Gen$.frequency(Gen.scala)
at org.scalacheck.Gen$.chooseNum(Gen.scala:455)
at org.scalacheck.Arbitrary$$anonfun$arbInt$1.apply(Arbitrary.scala:86)
at org.scalacheck.Arbitrary$$anonfun$arbInt$1.apply(Arbitrary.scala:86)
at org.scalacheck.Arbitrary$$anon$2.arbitrary$lzycompute(Arbitrary.scala:65)
at org.scalacheck.Arbitrary$$anon$2.arbitrary(Arbitrary.scala:65)
at org.scalacheck.Arbitrary$.arbitrary(Arbitrary.scala:69)
at org.scalacheck.Arbitrary$$anonfun$arbContainer$1.apply(Arbitrary.scala:299)
at org.scalacheck.Arbitrary$$anonfun$arbContainer$1.apply(Arbitrary.scala:299)
at org.scalacheck.Arbitrary$$anon$2.arbitrary$lzycompute(Arbitrary.scala:65)
at org.scalacheck.Arbitrary$$anon$2.arbitrary(Arbitrary.scala:65)
at org.scalacheck.Arbitrary$.arbitrary(Arbitrary.scala:69)
at org.scalacheck.Prop$.forAll(Prop.scala:726)
at org.scalacheck.Prop$.forAll(Prop.scala:734)
我敢打賭,這只是解決一個非常小的事情,但我找不到運行scala-的完整示例與junit-runner一起檢查內部scalatest。
感謝和問候
馬庫斯
像這樣的NoSuchMethodError通常表示您正在使用的庫A版本是針對某個版本的庫B編譯的,而該庫並不存在於您的項目中 - 例如,scalacheck期望您使用某個特定的scala版本。 –