我需要在我的一个 scala 文件中获取方法的参数名称。我知道,通过使用-parameter
编译器选项,我可以在 Java 中完成这项工作。但是,我无法在 scala 中执行此操作,因为我在 scalac 中找不到 -parameter 选项。
我怎样才能做到这一点?我在 SO 中看到了这个答案,但这是一个旧答案。在 scala(2.11) 中是否不可能,因为此选项仅在 java8 中提供?有什么破解方法吗?
编辑:(添加示例scala代码)
class ReflectionTest {
def method(name: String, id: Long, desc: String) = {
println("Inside the method");
}
}
我正在尝试读取ReflectionTest
类的方法参数method()
object Test extends App {
val methods= Class.forName("com.reflection.ReflectionTest").getMethods
methods filter(_.getName == "method") map { method =>
val param = method.getParameters
param.map {p =>
println("Method : "+method.getName+" , Parameter : "+p.getName)
}
}
}
斯卡拉版本:2.11.2
JDK版本:1.8
SBT 版本:0.13.1