相关疑难解决方法(0)

Scala中的"eval"

Scala可以用来编写Java应用程序的脚本吗?

我需要从Java加载一段Scala代码,为它设置执行范围(主机应用程序公开的数据),评估它并从中检索结果对象.

Scala文档显示了从Java调用编译的Scala代码是多么容易(因为它变成了常规的JVM字节码).

但是我如何动态评估Scala表达式(从Java或者如果在Scala中更容易)?

对于许多其他语言,有javax.scripting接口.Scala似乎不支持它,我在Java/Scala互操作性文档中找不到任何不依赖于提前编译的东西.

java scripting scala embedding

56
推荐指数
5
解决办法
2万
查看次数

Scala中反射的奇怪行为

我试图从另一个问题中得到一个例子,我遇到了一些我无法解释的事情:

scala> import scala.reflect.runtime.{currentMirror => m}
import scala.reflect.runtime.{currentMirror=>m}

scala> m.mkToolBox()
<console>:12: error: value mkToolBox is not a member of reflect.runtime.universe.Mirror
              m.mkToolBox()
                ^

scala> import scala.tools.reflect.ToolBox
import scala.tools.reflect.ToolBox

scala> m.mkToolBox()
res3: scala.tools.reflect.ToolBox[reflect.runtime.universe.type] = scala.tools.reflect.ToolBoxFactory$ToolBoxImpl@225765b0
Run Code Online (Sandbox Code Playgroud)

怎么mkToolBox不是m导入之前的成员ToolBox,而是之后的成员?

reflection scala scala-2.10

6
推荐指数
1
解决办法
1106
查看次数

标签 统计

scala ×2

embedding ×1

java ×1

reflection ×1

scala-2.10 ×1

scripting ×1