【发布时间】:2014-08-13 07:20:12
【问题描述】:
最近,specs2 已更新到版本 2.4,它现在使用 scalaz 7.1 而不是 7.0.x。一旦我在我的游戏中更新了我的 specs2 依赖项! 2.3 项目使用 2.4 版本,所有测试均失败,以下异常:
[error] Uncaught exception when running ...Spec: java.lang.In
compatibleClassChangeError: Found class scalaz.syntax.FunctorOps, but interface
was expected
sbt.ForkMain$ForkError: Found class scalaz.syntax.FunctorOps, but interface was
expected
at org.specs2.specification.SpecificationStructure$.createSpecificationEither(BaseSpecification.scala:119)
at org.specs2.runner.SbtRunner.org$specs2$runner$SbtRunner$$specificationRun(SbtRunner.scala:73)
at org.specs2.runner.SbtRunner$$anonfun$newTask$1$$anon$5.execute(SbtRunner.scala:59)
at sbt.ForkMain$Run$2.call(ForkMain.java:294)
at sbt.ForkMain$Run$2.call(ForkMain.java:284)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
以前似乎没有人遇到过这个错误。至少我无法在 specs2 和 play 项目的问题跟踪系统中找到它。
【问题讨论】:
-
你做了
clean吗?你能检查你的依赖项中是否真的有 scalaz 7.1 吗? (你可以使用 sbt 依赖树插件)
标签: specs2 playframework-2.3 scalaz7