다음 build.sbt가 있으며 IntelliJ에서 sbt를 관리하는 스칼라 2.10.4를 실행하고 sbt 빌드 파일을 기반으로 프로젝트를 새로 고칩니다. 이이 build.sbt와신비 스칼라 NoClassDefFoundError 및 scalaz.InvariantFunctor 오류
// build.sbt
name := "ScalazStreamsAkka"
version := "1.0"
resolvers += "Scalaz Bintray Repo" at "http://dl.bintray.com/scalaz/releases"
resolvers ++= Seq(
Resolver.sonatypeRepo("releases"),
Resolver.sonatypeRepo("snapshots")
)
libraryDependencies += "org.scalaz" %% "scalaz-core" % "7.1.0"
libraryDependencies += "org.scalaz" %% "scalaz-concurrent" % "7.1.0"
//libraryDependencies += "org.scalaz.stream" %% "scalaz-stream" % "0.5a"
libraryDependencies += "org.typelevel" %% "scodec-core" % "1.3.0"
libraryDependencies ++= Seq(
"com.chuusai" % "shapeless_2.10.4" % "2.0.0"
)
: 나는 다음과 같은 오류 중 하나가 발생하지 않고 scalaz.concurrent.Task
을 사용할 수 있도록 수없는 것 - 내가 scalaz 스트림을 추가 할 때까지 모든 것이 잘 작동했다 오류가 발생
scala> import scalaz.concurrent.Task
import scalaz.concurrent.Task
scala> Task
java.lang.IncompatibleClassChangeError: Class scalaz.concurrent.Task$$anon$1 does not implement the requested interface scalaz.InvariantFunctor
나는 "scalaz 동시는"다음과 같은 오류가 발생 주석을 해제하는 경우 :
내가이 최신의 예제를 실행하려고하면...
val ones: Process[Task,Int] = Process.constant(1)
/* A stream which emits `0, 1, 2 ... 99`. */
val zeroTo100: Process[Task,Int] = Process.range(0,100)
동일한 오류가 발생합니다.
다른 시간,이 오류가 발생
scala> val expensiveInt: Task[Int] = Task { 41 + 1 }
java.lang.NoClassDefFoundError: Could not initialize class scalaz.concurrent.Task$
사람이 내가 이상한 오류가 발생하지 않고 scalaz 스트림을 사용하는 방법을 알고 있나요? 나는 akka 배우와 미래뿐만 아니라 엉성한 것과 scodec과 scalaz - 스트림을 사용하려고합니다.
참고 : 게시 된 build.sbt는 주석 처리되지 않은 scalaz-stream과 함께 SBT 콘솔에서 올바르게 작동합니다. 아마도 Intellij 프로젝트의 일부가 scalaz 7.0을 당길 것입니다. *? – mpilquist