如何利用 sbt 运行 Scala REPL

刚开始学习 Scala 时,有一个很大的疑问,就是在 Scala 的官方下载页面(https://www.scala-lang.org/download/),仅仅提示用户可以通过 INTELLJ 或 sbt 来管理和编译 Scala 项目,并没有直接提供 Scala 运行环境的下载。但是对于初学者用户来说,其实最需要的是一个交互式编程环境( REPL 1 ),可以直接拿来就跑教程上的示例语句,而不是一个项目管理系统。然后在下载页面发现了下面这段话:

Compared to other programming languages, installing Scala is a bit unusual. Scala is unusual because it is usually installed for each of your Scala projects rather than being installed system-wide. Both of the above options manage (via sbt) a specific Scala version per Scala project you create.

意思是说 Scala 不像其他大多数语言那样有一个统一的,全系统可见的解释器或者编译器,而是利用 sbt 这样的项目管理工具,在每个项目内部有一个自己的编译和解释器。

通过查阅资料,了解到最便捷的使用 Scala REPL 的方法,是运行 sbt 命令,进入 sbt 运行时环境,然后再在 sbt 运行时环境中运行 consoleQuick,就会有 Scala 的 REPL 提示符出来,这时就可以使用 Scala REPL 了。详细命令及输出见下:

localhost:~ klcola$ sbt
[info] Loading project definition from /Users/klcola/project
[info] Set current project to klcola (in build file:/Users/klcola/)
[info] sbt server started at local:///Users/klcola/.sbt/1.0/server/d474a267f805a7be3144/sock
sbt:klcola> consoleQuick
[info] Updating ...
[info] Done updating.
[info] Starting scala interpreter...
Welcome to Scala 2.12.7 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_171).
Type in expressions for evaluation. Or try :help.

scala> def helloworld(): String = {
     |   return "Hello, World!"
     | }
helloworld: ()String

scala> println(helloworld())
Hello, World!

scala>

如果你还想知道如何在 Linux 下面安装 sbt,请参考 sbt 的 官方文档
对 Ubuntu 用户来说,安装相对比较简单,可参见下面的命令行

echo "deb https://dl.bintray.com/sbt/debian /" | sudo tee -a /etc/apt/sources.list.d/sbt.list
curl -sL "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x2EE0EA64E40A89B84B2DF73499E82A75642AC823" | sudo apt-key add
sudo apt-get update
sudo apt-get install sbt
附注:
  1. REPL,交互式编程环境,又叫交互式解释器,是 R(read)、E(evaluate)、P(print)、L(loop) 四个单词的首字母缩写。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值