我正在尝试启动一个scala repl循环(使用breakif),我正在建立/运行SBT,我试图按照常见问题解答中的建议,但无法让它工作。
有人可以提供MyType的示例,该MyType用于配置所描述的设置,“MyType是一个代表性的类,应该包含在解释器的类路径及其应用程序类加载器中”
https://github.com/harrah/xsbt/wiki/FAQ(在“我如何在代码中使用Scala解释器?”下)
使用scala 2.9.1和sbt 0.11
由于
答案 0 :(得分:1)
常见问题链接指向background discussion,其中演示了MyType
的实际使用方式,
用法:的
val settings = new Settings()
settings.embeddedDefaults[MyType]
内部SBT:
def embeddedDefaults[T: Manifest] {
val loader = implicitly[Manifest[T]].erasure.getClassLoader
explicitParentLoader = Some(loader) // for the Interpreter parentClassLoader
getClasspath("app", loader) foreach { classpath.value = _ }
getClasspath("boot", loader) foreach {
bootclasspath.value = settings.bootclasspath.value + File.separator + _
}
}
所以MyType
仅用于帮助SBT找到合适的类加载器。据推测,您可以选择MyType
作为您希望从解释器中获得的项目中的任意类。这基本上是FAQ所说的: MyType是一个代表类,应该包含在解释器的类路径和应用程序类加载器中。