如何在scala repl中导入play

时间:2017-03-11 07:32:57

标签: scala playframework read-eval-print-loop

如何在Scala repl中导入播放?

create

3 个答案:

答案 0 :(得分:12)

1)设置简单构建工具(sbt){很容易 - 从这里下载 - http://www.scala-sbt.org/download.html和说明 - http://www.scala-sbt.org/0.13/docs/Installing-sbt-on-Windows.html}

2)使用build.sbt创建一个包含以下内容的空文件夹

//你的测试项目/ build.sbt

scalaVersion := "2.11.8"                                                                               

resolvers += "Typesafe repository" at "http://repo.typesafe.com/typesafe/releases/"                    

libraryDependencies += "com.typesafe.play" %% "play" % "2.5.12"

3)然后只需在root文件夹上执行sbt console,该文件夹将下载播放并将其提供给您的控制台。

$ ls -l ~/.ivy2/cache/com.typesafe.play/play_2.11/jars/
total 15392
-rw-r--r--  1 as18  185223974  4107407 Jan 22 15:59 play_2.11-2.5.12.jar

然后你很高兴。

scala> import play.api.libs.json._
import play.api.libs.json._

scala> val json: JsValue = Json.parse("""{ "compiler" : "scala", "ratings" : 5 }""")
json: play.api.libs.json.JsValue = {"compiler":"scala","ratings":5}

scala> val compiler = ( json \ "compiler" )
compiler: play.api.libs.json.JsLookupResult = JsDefined("scala")

此外,如果你已经拥有它,你可以直接提供jar

scala -cp ~/.ivy2/cache/com.typesafe.play/play_2.11/jars/play_2.11-2.5.12.jar

scala> import play.api.libs._
import play.api.libs._

答案 1 :(得分:3)

找不到包,因为它不在REPL的类路径中。 如果您知道计算机上Play Framework的JAR的位置,则可以在启动REPL时将其添加到类路径中:

> scala -cp path/to/play.jar

您也可以直接从REPL会话中添加:

:require play.jar

请注意,您仍需要像以前一样导入您的课程。

答案 2 :(得分:3)

使用Ammonite REPL更简单:

load.ivy("com.typesafe.play" %% "play" % "2.5.12")
import whatever.you.need