当我启动Scala REPL时,有没有办法将Scala代码或源文件放在命令行上自动运行?我希望在启动时自动完成一些导入(在bash脚本的命令行上),以方便用户使用。
答案 0 :(得分:0)
而不是Scala REPL使用Ammonite。它比Scala REPL要好得多。
关于菊石的最好的部分是你可以在〜/ .ammonite文件夹下创建一个名为predef.sc的文件。在这里,您可以指定像interp.load.ivy("joda-time" % "joda-time" % jodaVersion)
这样的SBT依赖项,也可以像import scala.concurrent.ExecutionContext.Implicits.global
现在,每次启动菊石REPL时,您都拥有所有SBT依赖关系和导入。这有多酷。
答案 1 :(得分:0)
如果您的项目有一个 build.sbt
文件,那么您可以在该文件中添加如下内容:
initialCommands in console :=
"""
import java.net._
import java.time._
import java.time.format._
import java.time.temporal._
import javax.mail._
import javax.mail.internet._
"""
不确定这有多清楚,但它只是一个使用三重引号的块字符串
使用这些基础类集合(任何对您的工作有意义的类)可以节省大量时间!