scala - 在运行时编译和执行Scala代码

标签 scala interpreter dsl

在Scala或Java中,是否可以在运行时以字符串形式编译和执行Scala代码?

我的想法是使用Scala构建DSL,然后让Java程序员在Java内部使用DSL。

我听说类scala.tools.nsc.Interpreter可以执行类似的操作,但是当我将其导入scala文件中时,出现“对象工具不是scala包的成员”。

有人可以给我一个提示吗?

最佳答案

在2.10.0中,我们公开了Scala反射API,其中包括运行时编译工具。可以在这里找到更多详细信息:Generating a class from string and instantiating it in Scala 2.10

关于scala - 在运行时编译和执行Scala代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7477589/

相关文章:

python - 模块导入两次。 Python解释器中可能存在的错误

c# - e.data.GetData 始终为空

groovy - 在 Groovy 中重载 == 以不返回 bool 值

haskell - EDSL 中的原语派生运算和组合器 :s

scala - 将两个匹配模式合而为一

Scala 编译器对泛型参数没有任何推断

java - 无需解释器即可轻松将 python 导出给其他人

java - Unresolved 依赖性 org.mongodb#bson#2.5,sbt 中的不良组织

scala - Scala错误处理中的错误上下文

java - java字节码是直接翻译成汇编代码吗?