尝试运行scala脚本,安装“sbt / sbt”时出现conscript错误

时间:2015-05-05 14:53:03

标签: scala sbt

我正在尝试在OSX上安装带有conscript的sbt / sbt

cs sbt/sbt --branch 0.13.8

遵循sbt doc:http://www.scala-sbt.org/release/docs/Scripts.html

我收到了以下错误:

.......

[SUCCESSFUL ] org.scala-sbt#apply-macro;0.13.6!apply-macro.jar (4702ms)
:: retrieving :: org.scala-sbt#boot-app
    confs: [default]
    44 artifacts copied, 0 already retrieved (13750kB/113ms)
[error] Not a valid command: version (similar: session)
[error] version
[error]        ^
[error] Not a valid command: version
[error] version
[error]        ^
[error] Not a valid command: version
[error] version
[error]        ^

Conscripted sbt/sbt to ~bin/sbt
Conscripted sbt/sbt to ~/bin/scalas
Conscripted sbt/sbt to ~/bin/screpl

scalasscrepl似乎安装正确吗?但是,当我尝试执行以下脚本helloworld.scala时,

#!/usr/bin/env scalas

/***
scalaVersion := "2.11.6"
*/

println("hello")

我收到的错误如下:

>./helloworld.scala
~ ./helloworld.scala:5: error: eof expected but ';' found.
  */
^
[error] Error parsing expression.  Ensure that settings are separated by blank lines.

另一个脚本示例test.scala

#!/usr/bin/env scalas

/***
scalaVersion := "2.11.6"
libraryDependencies += "net.databinder.dispatch" %% "dispatch-core" % "0.11.2"
  */
import dispatch._, Defaults._
case class Location(city: String, state: String)
    def weatherSvc(loc: Location) = {
      host("api.wunderground.com") / "api" / "5a7c66db0ba0323a" /
        "conditions" / "q" / loc.state / (loc.city + ".xml")
    }
    val nyc = Location("New York", "NY")
    for (str <- Http(weatherSvc(nyc) OK as.String))
      println(str)

我收到的错误如下:

./test.scala:18: error: not found: value Location
val nyc = Location("New York", "NY")
          ^
./test.scala:14: error: not found: value host
  host("api.wunderground.com") / "api" / "5a7c66db0ba0323a" /
  ^
./test.scala:13: error: not found: type Location
def weatherSvc(loc: Location) = {
                    ^
sbt.compiler.EvalException: Type error in expression
    at sbt.compiler.Eval.checkError(Eval.scala:384)
......

有人可以建议吗?

1 个答案:

答案 0 :(得分:0)

事实证明,最后一条评论行头部的空白(" */")失败了。 IntelliJ会自动添加空间来美化注释(或者是scala约定来添加空格?)但是scalas并没有剥离它。