2012-07-17 33 views
1

我下面的教程來創建的Heroku這裏Scala的Web應用程序:https://devcenter.heroku.com/articles/scala斯卡拉不與Heroku的例子工作

我精確複製有例子,但是當我運行

sbt clean compile stage 

它失敗,因爲這些錯誤的編譯:

[error] /home/ajcrites/dev/dyl/src/main/scala/Web.scala:1: object jboss is not a member of package org 
[error] import org.jboss.netty.handler.codec.http.{HttpRequest, HttpResponse} 
[error]   ^
[error] /home/ajcrites/dev/dyl/src/main/scala/Web.scala:2: object twitter is not a member of package com 
[error] import com.twitter.finagle.builder.ServerBuilder 
[error]   ^
[error] /home/ajcrites/dev/dyl/src/main/scala/Web.scala:3: object twitter is not a member of package com 
[error] import com.twitter.finagle.http.{Http, Response} 
[error]   ^
[error] /home/ajcrites/dev/dyl/src/main/scala/Web.scala:4: object twitter is not a member of package com 
[error] import com.twitter.finagle.Service 
[error]   ^
[error] /home/ajcrites/dev/dyl/src/main/scala/Web.scala:5: object twitter is not a member of package com 
[error] import com.twitter.util.Future 
[error]   ^
[error] 5 errors found 

基本上,我認爲它做欺騙不是在封裝或不是我有什麼的。但是,我不知道如何安裝finagle,上面的教程中也沒有提供說明,也不知道https://github.com/twitter/finagle

我該怎麼做才能編譯這個代碼?

回答

2

如果將取決於斯卡拉的版本和欺騙你想用,但要欺騙添加到項目中,只需添加以下build.sbt

libraryDependencies += "com.twitter" % "finagle-core_2.9.1" % "1.11.0" exclude("org.apache.thrift", "libthrift") 

libraryDependencies += "com.twitter" % "finagle-http_2.9.1" % "1.11.0" 

libraryDependencies += "com.twitter" % "finagle-serversets_2.9.1" % "1.11.0" excludeAll(
    ExclusionRule(organization = "com.sun.jdmk"), 
    ExclusionRule(organization = "com.sun.jmx"), 
    ExclusionRule(organization = "javax.jms") 
) 

這個例子是約3個月大,所以我相信你可以得到更新版本的Finagle。

+0

如果人們遇到使用IDEA「製作項目」按鈕這個問題,請嘗試使用「SBT乾淨編譯階段」命令。 – 2013-11-22 17:43:43

0

我試過這段代碼,它對我有用。也許看在GitHub上源的工作原理:https://github.com/heroku/devcenter-scala

+0

詹姆斯,因爲你是正確的人要問。你會在其他流行的Scala服務庫上發佈類似的教程,比如Spray嗎?還有其他的持久性模型,比如SLICK(ScalaQuery)?我意識到你不能做任何事情;-)只是好奇。 – Jack 2012-07-19 09:33:18

+0

我想創建更多的Scala教程。 Spray和SLICK應該是我的首要任務嗎? – 2012-07-19 17:32:14

+0

Spray和SLICK都非常新,但非常現代化,設計精良。除非我錯了,我從來沒有錯的(從公主新娘;-),它們都將成爲重量輕REST服務棧很受歡迎。不錯的視頻介紹到噴霧:http://marakana.com/s/spray_rest_on_akka_from_the_northeast_scala_symposium,1150/index.html – Jack 2012-07-19 18:53:35