2012-09-20 59 views
0

我正在使用java處理akka項目並播放framewrok。添加依賴項以播放scala.build文件時出錯

我想用akka遠程集羣構建集羣系統。

但增加的依賴於build.scala文件

我碰到下面的錯誤後。

[info] Done updating. 
[error] java.lang.NoClassDefFoundError: akka/util/FiniteDuration 

這是從build.scala文件

object ApplicationBuild extends Build { 

    val appName   = "akka-remote" 
    val appVersion  = "1.0-SNAPSHOT" 


    val appDependencies = Seq(
     "com.typesafe.akka" % "akka-actor" % "2.1-SNAPSHOT" , 
      "com.typesafe.akka" % "akka-remote" % "2.1-SNAPSHOT" , 
     "com.typesafe.akka" % "akka-kernel" % "2.1-SNAPSHOT" 
    ) 

    val main = PlayProject(appName, appVersion, appDependencies, mainLang = JAVA).settings(
     // Add your own project settings here 
     resolvers += "Typesafe Releases" at "http://repo.typesafe.com/typesafe/releases" 
    ) 

} 

誰能幫出這個問題,請代碼。

回答

2

我想你正在使用Play的最新穩定版本!

玩!框架2.0.x隨Akka 2.0.2 一起發貨,但未與Akka遠程一起發貨。 要添加它只需使用:

val appDependencies = Seq(
     "com.typesafe.akka" % "akka-actor" % "2.0.2" , 
     "com.typesafe.akka" % "akka-remote" % "2.0.2" , 
     "com.typesafe.akka" % "akka-kernel" % "2.0.2" 
) 

如果需要記錄功能的也可以加

"com.typesafe.akka" % "akka-slf4j" % "2.0.2" 

如果使用2.1阿卡發行與播放! 2.0.x系列也許你會得到一些衝突

1

阿卡已經隨遊戲框架:https://github.com/playframework/Play20/blob/master/framework/project/Build.scala#L280

但嵌入式版本是不是最新版本(2.0.2阿卡用於播放2.0.3)。

如果您添加最新的Akka版本,您可能會遇到一些lib衝突。

而作爲你的問題,你的dependendy版本(2.1-SNAPSHOT)的類型安全releases回購不存在:http://repo.typesafe.com/typesafe/releases/com/typesafe/akka/akka-actor/

你必須使用類型安全snapshots庫:

val main = PlayProject(appName, appVersion, appDependencies, mainLang = JAVA).settings(
    resolvers += "Typesafe Releases" at "http://repo.typesafe.com/typesafe/snapshots" 
) 
+0

感謝好友會盡力回覆你 –

相關問題