如何使用 Coursier 在命令行中运行 Scala 3 应用程序

Jac*_*ack 5 scala coursier scala-3

如果您按照官方 Scala 3 站点(如DottyScala Lang)上的步骤进行操作,那么它建议使用 Coursier 安装 Scala 3。问题在于,这些都没有解释在执行这些步骤后如何运行已编译的 Scala 3 应用程序。

斯卡拉 2:

> cs install scala
> scalac HelloScala2.scala
> scala HelloScala2
Hello, Scala 2!
Run Code Online (Sandbox Code Playgroud)

斯卡拉 3:

> cs install scala3-compiler
> scala3-compiler HelloScala3.scala
Run Code Online (Sandbox Code Playgroud)

现在如何使用 Scala 3 运行编译的应用程序?

小智 4

目前似乎没有办法使用 coursier 启动 Scala 3 的运行程序,请参阅此问题。作为解决方法,您可以从github 发布页面安装二进制文件。一直向下滚动通过贡献列表以查看 .zip 文件并将其下载并解压到某个本地文件夹。然后将解压后的bin目录放到你的路径上。重新启动后,您将在终端中收到scala命令(scalac等)。

另一种解决方法是java通过以下命令直接将运行器与来自 coursier 的类路径一起使用:

java -cp $(cs fetch -p org.scala-lang:scala3-library_3:3.0.0):. myMain
Run Code Online (Sandbox Code Playgroud)

替换myMain为您的函数名称@main def。如果它在一个包裹中,myPack您需要说myPack.myMain(像往常一样)。