在Scala中,我经常必须导入多个包含隐式和其他实用程序的软件包,尤其是在REPL上:
import scala.collection.JavaConversions._
import scala.collection.{mutable => mut}
import com.myapp.db._
import com.orm._
val con = connectDb(...)
...
我知道无法在Scala中导入多个包(尽管包对象作用域可以有所帮助),但是从REPL那里呢?在没有大量复制和粘贴的情况下,是否可以通过REPL进行此操作?我也尝试使用:load,但是在那里导入/创建的东西也不会引入REPL的范围。我注意到:power命令确实将东西导入范围。
更新:
:load
实际上有效。 最佳答案
我不确定一般的解决方案,但是在SBT中可以配置项目,以便控制台(REPL)在启动时运行一些初始命令。这是example build.sbt
file的摘录,
// set the initial commands when entering 'console' only
initialCommands in console := "import myproject._"
编辑:另一个引用是Scalala项目。他们有一个Scala program,它会启动嵌入式REPL并填充必要的导入。有关用法,请参见其quick-start guide。
关于scala - 在Scala REPL中导入多个软件包,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6963654/