[play 2.2.1] Play includes Akka 2.3-M1 when I add scala-metrics dependency

110 views
Skip to first unread message

Timo Hirt

unread,
Dec 4, 2013, 5:15:32 PM12/4/13
to play-fr...@googlegroups.com
Hi!

I'm trying to use scala-metrics in my play application. This library depends on Akka (>= 2.2). As play comes with akka 2.2.0, I though there should be no problem. But, after defining the scala-metrics dependency

Dependency: libraryDependencies += "nl.grons" %% "metrics-scala" % "3.0.3"

the following Exception appears:

2013-12-04 15:29:01,865 [info] play - Application started (Dev)
2013-12-04 15:29:02,159 [info] play - Starting application default Akka system.
[ERROR] [12/04/2013 15:29:02.497] [play-akka.actor.default-
dispatcher-2] [ActorSystem(play)] Uncaught error from thread [play-akka.actor.default-dispatcher-2] shutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled
java.lang.AbstractMethodError
    at akka.actor.ActorCell.receiveMessage(ActorCell.scala:498)
    at akka.actor.ActorCell.invoke(ActorCell.scala:456)
    at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:237)
    at akka.dispatch.Mailbox.run(Mailbox.scala:219)
    at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386)
    at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
    at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
    at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
    at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)

The dependencies in the Play console show, that Play takes akka 2.3-M1 for unclear reasons.

+-----------------------------
----------------------------------------------+--------------------------------------------------------+
| com.typesafe.akka:akka-actor_2.10:2.3-M1             | nl.grons:metrics-scala_2.10:3.0.3                     
| As akka-actor_2.10-2.3-M1.jar                                | com.typesafe.play:play_2.10:2.2.1  
                                                                              | com.typesafe.akka:akka-slf4j_2.10:2.2.0

Is there any way to force play using akka 2.2.0? I don't want 2.3 at the moment and the scala-metric library doesn't require exactly this version.

Ryan Tanner

unread,
Dec 4, 2013, 5:44:18 PM12/4/13
to play-fr...@googlegroups.com
"nl.grons" %% "metrics-scala" % "3.0.3" exclude ({akka dependency string})

Nilanjan Raychaudhuri

unread,
Dec 5, 2013, 12:56:05 AM12/5/13
to play-fr...@googlegroups.com
It is the default behavior of Ivy to pick up the latest version.

Nilanjan, Developer & Consultant
Typesafe Inc.
Twitter: @nraychaudhuri
Reply all
Reply to author
Forward
0 new messages