在Play Framework 2.1上测试非阻塞Redis客户端(Fyrie)时出现编译错误 [英] Compilation error when testing non blocking Redis client (Fyrie) on Play Framework 2.1

查看:113
本文介绍了在Play Framework 2.1上测试非阻塞Redis客户端(Fyrie)时出现编译错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我尝试编译以下代码时

when I try to compile the following code

import play.api._
import play.api.mvc._
import scala.collection.mutable.StringBuilder
import net.fyrie.redis.RedisClient
import net.fyrie.redis.RedisClientConfig
//import akka.dispatch._
//import akka.dispatch.Future

object Application extends Controller {

  //  val rd: RedisClient = new RedisClient("localhost", 6379, new RedisClientConfig(1, true, true, 50 to 100))(akka.actor.ActorSystem.create)
  val rd = RedisClient.apply("localhost", 6379, new RedisClientConfig(1, true, true, 50 to 100))(akka.actor.ActorSystem.create)

  def nonblocktest(application: String, platform: String) = Action {
    val future: akka.dispatch.Future[Option[akka.util.ByteString]] = rd.get(StringBuilder.newBuilder.append(application).append('-').append(platform).toString)
    future onSuccess {
      case x => Ok(x.get.toString)
    } onFailure {
      case t: Throwable => Results.NoContent
    }
    Results.NoContent
  }

}

我收到以下错误

sbt.PlayExceptions$CompilationException: Compilation error[package dispatch contains object and package with same name: japi
one of them needs to be removed from classpath]
        at sbt.PlayReloader$$anon$2$$anonfun$reload$2$$anonfun$apply$15$$anonfun$apply$16.apply(PlayReloader.scala:349) ~[na:na]
        at sbt.PlayReloader$$anon$2$$anonfun$reload$2$$anonfun$apply$15$$anonfun$apply$16.apply(PlayReloader.scala:349) ~[na:na]
        at scala.Option.map(Option.scala:133) ~[scala-library.jar:na]
        at sbt.PlayReloader$$anon$2$$anonfun$reload$2$$anonfun$apply$15.apply(PlayReloader.scala:349) ~[na:na]
        at sbt.PlayReloader$$anon$2$$anonfun$reload$2$$anonfun$apply$15.apply(PlayReloader.scala:346) ~[na:na]
        at scala.Option.map(Option.scala:133) ~[scala-library.jar:na]

如果我取消对最后两个导入中的任何一个的注释,我将得到相同的结果.我正在尝试在play framework 2.1.0中将fyrie用于scala 2.10.0.我的目标是测试针对sedis(阻塞)的fyrie非阻塞异步调用性能.那我在做什么错?知道自己可能是非常(非常)愚蠢的事情.

I get the same if I uncomment any of the last two imports. I am trying to use fyrie for scala 2.10.0 in play framework 2.1.0. My goal is to test fyrie non blocking async calls performances against sedis (blocking). So what am I doing wrong? Knowing myself it could be something very (VERY) dumb.

感谢您的帮助.

推荐答案

您可能应该尝试使用

You should probably try to use this fork of fyrie redis, as the main repo seems to be dead and is using old dev versions of scala and akka.

这篇关于在Play Framework 2.1上测试非阻塞Redis客户端(Fyrie)时出现编译错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆