【问题标题】:How to reuse Ammonite REPL's sc files in a sbt project?如何在 sbt 项目中重用 Ammonite REPL 的 sc 文件?
【发布时间】:2017-09-24 03:20:42
【问题描述】:
我有一些可重复使用的 Ammonite REPL 的 sc 文件,这些文件在一些 Jupyter Scala 笔记本中使用过。
现在我正在创建一个由 sbt 构建的独立应用程序。我希望我可以在 sbt 项目中重用这些现有的sc 文件。
是否可以为 Jupyter Scala/Ammonite REPL 和 sbt 项目共享这些 sc 文件?如何使scala源和sc文件一起编译?
【问题讨论】:
标签:
scala
sbt
jupyter
sbt-plugin
ammonite
【解决方案1】:
我创建了Import.scala,这是一个支持魔术导入的 Scala 编译器插件。
在 Import.scala 的帮助下,.sc 文件中的代码 sn-ps 可以加载到 sbt 项目中的 Scala 源文件中,其语法与 Ammonite 或 Jupyter Scala 相同:
给定一个MyScript.sc 文件。
// MyScript.sc
val elite = 31337
魔术导入到另一个文件中。
import $file.MyScript
有效。
assert(MyScript.elite == 31337)