为什么scala不能找到什么sbt可以?

时间:2017-06-14 10:46:48

标签: scala playframework sbt

sbt一切都很好:

» sbt console
[info] Loading project definition from /repos/myrepo/project
[info] Set current project to bpavscan (in build file:/repos/myrepo/)
[info] Starting scala interpreter...
[info] 
Welcome to Scala 2.11.8 (OpenJDK 64-Bit Server VM, Java 1.8.0_131).
Type in expressions for evaluation. Or try :help.

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

scala> 

但如果我使用scala工具执行此操作:

» scala
Welcome to Scala version 2.11.6 (OpenJDK 64-Bit Server VM, Java 1.8.0_131).
Type in expressions to have them evaluated.
Type :help for more information.

scala> import play.api.libs.json._
<console>:7: error: not found: value play
       import play.api.libs.json._
              ^

scala>

我需要运行一个简单的脚本,我通常会这样做:

scala myscript.scala

但是由于现在我的脚本具有播放依赖性,因此我不能再使用scala运行它,因为scala找不到播放。

我需要:

  1. 能够使用简单的scala工具
  2. 加载播放框架
  3. 能够使用sbt运行一个简单的脚本:sbt run运行我的项目,这是我不想要的。我想运行一个简单的脚本(尝试一些简单的东西)

1 个答案:

答案 0 :(得分:2)

sbt console加载与console/REPL相同的scala,但在build.sbt中定义了其他加载的依赖项。因此,在加载控制台之前,会添加所有依赖库。这就是使用import playsbt console库的原因。

另一方面,scala使用系统内console内的库启动scala-package。因此,需要在jars的包中包含额外的importing。对于上述情况,如果scala目录中包含了play library jar,那么import play.api.libs.json._也应该适用于scala console