当我尝试使用sbt 0.13.5(和Java 1.7.0_45)运行sbt test
时,遇到以下错误:
[错误](test:executeTests)java.lang.nosuchmethoderror:scala.predef$.arrowassoc(ljava/lang/object;)ljava/lang/object;
version := "0.1"
scalaVersion := "2.10.3"
resolvers ++= Seq(
"spray" at "http://repo.spray.io",
"Typesafe Repository" at "http://repo.typesafe.com/typesafe/releases/"
)
libraryDependencies ++= Seq(
"io.spray" %% "spray-json" % "1.2.5",
"com.typesafe.akka" %% "akka-actor" % "2.2.4",
"com.typesafe.akka" %% "akka-slf4j" % "2.2.4",
"com.typesafe.akka" %% "akka-testkit" % "2.2.4",
"com.github.kxbmap" %% "configs" % "0.2.1",
"junit" % "junit" % "4.8.1" % "test",
"ch.qos.logback" % "logback-classic" % "1.0.13",
"io.spray" % "spray-can" % "1.2.1",
"io.spray" % "spray-routing" % "1.2.1",
"io.spray" % "spray-testkit" % "1.2.1",
"org.scalatest" % "scalatest_2.10" % "2.0" % "test",
"com.typesafe.akka" %% "akka-testkit" % "2.1.4"% "test",
"org.mockito" % "mockito-core" % "1.9.5",
"org.specs2" %% "specs2" % "2.1.1" % "test"
)
我尝试删除~/.sbt
和~/.ivy2
目录,并在每次删除后执行sbt clean
。
这是完整的堆栈跟踪:
sbt test
[info] Loading project definition from /Users/arumehta/cds_torii/project
[info] Set current project to cds_torii (in build file:/Users/arumehta/cds_torii/)
java.lang.NoSuchMethodError: scala.Predef$.ArrowAssoc(Ljava/lang/Object;)Ljava/lang/Object;
at org.scalatest.tools.FriendlyParamsTranslator$.<init>(FriendlyParamsTranslator.scala:23)
at org.scalatest.tools.FriendlyParamsTranslator$.<clinit>(FriendlyParamsTranslator.scala)
at org.scalatest.tools.Framework.runner(Framework.scala:1064)
at sbt.Defaults$$anonfun$createTestRunners$1.apply(Defaults.scala:515)
at sbt.Defaults$$anonfun$createTestRunners$1.apply(Defaults.scala:510)
at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
at scala.collection.immutable.Map$Map2.foreach(Map.scala:130)
at scala.collection.TraversableLike$class.map(TraversableLike.scala:244)
at scala.collection.AbstractTraversable.map(Traversable.scala:105)
at sbt.Defaults$.createTestRunners(Defaults.scala:510)
at sbt.Defaults$.allTestGroupsTask(Defaults.scala:525)
at sbt.Defaults$$anonfun$testTasks$4.apply(Defaults.scala:392)
at sbt.Defaults$$anonfun$testTasks$4.apply(Defaults.scala:392)
at scala.Function8$$anonfun$tupled$1.apply(Function8.scala:35)
at scala.Function8$$anonfun$tupled$1.apply(Function8.scala:34)
at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47)
at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:42)
at sbt.std.Transform$$anon$4.work(System.scala:64)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:18)
at sbt.Execute.work(Execute.scala:244)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:160)
at sbt.CompletionService$$anon$2.call(CompletionService.scala:30)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
[error] (test:executeTests) java.lang.NoSuchMethodError: scala.Predef$.ArrowAssoc(Ljava/lang/Object;)Ljava/lang/Object;
[error] Total time: 1 s, completed Aug 1, 2014 3:49:24 PM
我也犯了同样的错误,并注意到sbt实际上是在编译Scala2.10作为目标。将Scalaversion
更改为2.11.4
解决了这个问题。
问题内容: 当我尝试运行程序时,出现以下错误 请帮忙 问题答案: 从Javadoc: 如果Java虚拟机找不到声明为native的方法的适当本机语言定义,则抛出该异常。 这是与JNI相关的错误。loadJacobLibrary试图加载名为jacob-1.14.3-x86的本机库,但在java.library.path定义的路径上找不到该库。启动JVM时,应将此路径定义为系统属性。例如 在Windo
在这里抛出RejectedExecutionException是否有其他原因? java.util.concurrent.RejectedExecutionException:任务java.util.concurrent.FutureTask@4194a5f0被java.util.concurrent.ThreadPoolExecutor@41a36e90拒绝[终止,池大小=0,活动线程=0,排队
我们已经为spark编写了单元测试,在本地模式下有4个线程。 当一个接一个地启动时,例如通过intellij或sbt testOnly,每个测试都运行良好。 当用sbt测试启动时,它们会出现如下错误 我们使用的是一个带有多个子项目的sbt项目,其定义如下:
请假设正常的“新手”的说法。 我使用的是Scala2.12.10;在build.sbt中,我添加了Scalatest: 我将一些scala.js添加到一个现有的java项目中,这样我的scala源代码路径是正常的,但是我为java和资源创建了一些空目录,并使用了一个不同的目标,这样就不会与现有的代码发生冲突: 我将ScalaTest示例文件exampleSpec.scala放在src/test/s
Scala的sbt可以选择只运行以前失败的测试。有没有格拉德尔的等效物? https://www.scala-sbt.org/1.x/docs/Testing.html#testQuick
用的是vue-element-admin架子. 点击一个菜单连接后打开一个列表(A.create), 点击列表中的一个项(B.create)打开B页面. 再关闭B页面, 此时再回到A, 此时又执行了A页面的create方法 开发时以上操作不会触发A页面的create, 现在莫名的都create了