如何在scala中将字符串转换为可运行代码?
我想动态创建case类,为此我编写了程序,但不能将case类定义为程序返回字符串类型,而不是定义类 例如:案例类+/$class\u名称+$col\u列表+如何在scala中将字符串转换为可运行代码?,scala,apache-spark,Scala,Apache Spark,我想动态创建case类,为此我编写了程序,但不能将case类定义为程序返回字符串类型,而不是定义类 例如:案例类+/$class\u名称+$col\u列表+ 预期:定义类abc警告:您需要100%确保生成的代码已编译 您可以这样做: val yourPath = ...\\somePath.scala new PrintWriter(yourPath) { write(s"case class $class_name($col_list)") close() } 通过这种方式,您可
预期:定义类abc警告:您需要100%确保生成的代码已编译 您可以这样做:
val yourPath = ...\\somePath.scala
new PrintWriter(yourPath) {
write(s"case class $class_name($col_list)")
close()
}
通过这种方式,您可以创建一个scala类来解析字符串。如果类生成错误,它将无法编译,因此您需要确定生成的是什么。动态代码生成在Scala中并不常见,尤其是在spark这样的分布式环境中,可能很难正确生成。您最初试图解决的问题是什么?我想知道是否可以创建repl的实例并向其中传递字符串。可能的dupulicate:看起来有一个IMain解释器。