【发布时间】:2012-03-21 09:24:26
【问题描述】:
我正在使用 Groovy 1.8.4,试图获取封闭函数的名称...
def myFunction() {
println functionName??
}
我试过delegate、this、owner,Groovy 抱怨找不到这样的对象。
我还尝试了 Java hack new Exception().getStackTrace()[0].getMethodName(),但这只是打印 newInstance0
【问题讨论】:
-
请问你想用方法名来完成什么?
-
输出跟踪...我们正在构建 POC,代码经常更改,我们有一个方法可以在启动新函数时打印标题,我们希望名称来自函数本身,而不是将其作为参数传递,以防函数名称发生变化
-
stackoverflow.com/a/9417763/190201中有一个例子以及如何获取当前行号和文件名。
-
@ataylor 哦,伙计,这太恶心了!我暂时不用它处理,谢谢
标签: function reflection groovy introspection