2016-12-14 8 views
3
value unsafePerformSync is not a member of scalaz.concurrent.Task[String] 
[error]  val x = task.unsafePerformSync 
[error]    ^
[error] one error found 

scalaz.concurrent.Taskのメンバーではないでしょうか?ありがとう。次のコードスニペットから値unsafePerformSyncは、上記(2.11.8)scalacエラーを解決する方法[文字列]

import org.http4s._, org.http4s.dsl._         
import org.http4s.client.blaze._ 
import scalaz._, Scalaz._ 
import scalaz.concurrent.Task 

object Client extends App { 
    val client = PooledHttp1Client() 
    val httpize = Uri.uri("http://httpize.herokuapp.com") 

    def post() = { 
    val req = Request(method = Method.POST, uri = httpize/"post").withBody("hello") 
    val task = client.expect[String](req) 
    val x = task.unsafePerformSync 
    println(x) 
} 
+0

これはどちらですか? – rethab

答えて

2

最初0.13放出http4s以来はScalazの7.1と7.2.x.のクロス公開されていますScalaz 7.1.xでは、unsafePerformSyncは単にrun(名前としては直接呼び出すべきではない理想的なものでも、あなたのプログラムでは一度も呼び出すべきではありません。

2つの選択肢があります。あなたは(あなたが他の制約を持つべきでない限り)Scalaz 7.2を使用する場合は、ビルドの設定で、このような行を見つける:

libraryDependencies += "org.http4s" %% "http4s-core" % "0.15.0" 

そして、このように変更します。

libraryDependencies += "org.http4s" %% "http4s-core" % "0.15.0a" 

別の方法としては、 Scalaz 7.1に固執し、コードを変更してrunを使用するだけです。

関連する問題