从 CLI 快速切换 Scala 版本

Quickly switching Scala versions from CLI

nvm(节点版本管理器)可以快速选择要使用的替代节点版本。现在的shellScala有没有类似的快速切换不同版本的方法?例如,假设我想使用 2.12.10 启动 REPL,然后执行类似

的操作
scala use 2.12.10

会用

打招呼
Welcome to Scala 2.12.10 (OpenJDK 64-Bit Server VM, Java 1.8.0_202).
Type in expressions for evaluation. Or try :help.

注意问题不是关于通过 scalaVersion 的 SBT,而是直接从命令行使用 scala 命令。

dwijnand/scala-runners

An alternative implementation of the Scala distribution's runners: scala, scalac, scaladoc, and scalap (no fsc). They are implemented as thin shell scripts around Coursier's coursier launch to add some Scala runners-specific (power) options.

提供启动不同版本的快捷方式

scala --scala-version 2.12.10

甚至 development versions 来自

https://scala-ci.typesafe.com/artifactory/scala-integration
https://scala-ci.typesafe.com/artifactory/scala-pr-validation-snapshots

例如

scala --scala-version 2.13.2-bin-81d1da3

或特定的pull request

scala --scala-pr 8960

除了 scala-runners,还有 sdkman,这是一个更通用的工具,但也支持 scala。例如,命令:

sdk use scala 2.12.10

将当前 shell 会话的 scala 设置为 2.12.10。