【发布时间】:2015-03-09 15:03:28
【问题描述】:
Ruby 使您能够跟踪在运行时定义方法的文件和行。因此,例如,如果您有一个名为“obj”的对象,它能够调用方法“do_something”,您可以通过以下方式跟踪其定义(在 ruby 1.9 及更高版本中):
obj.method(:do_something).source_location
groovy 有任何等效的功能吗?我正在尝试追踪定义方法的位置,但事实证明这非常困难。
感谢您的帮助。
【问题讨论】:
-
如果您只是想查看定义方法的位置,为什么不使用 IDE 的调试器进入方法调用?
-
就我而言,intellij 不会介入其中。但是,我认为 Grails 文档中的以下内容可能解释了为什么“GORM API 已被形式化为一组类(GormStaticApi、GormInstanceApi 和 GormValidationApi),这些类在字节码级别静态连接到每个域类。结果是为 IDE 提供更好的代码完成,与 Java 更好的集成,以及为其他类型的数据存储提供更多 GORM 实现的潜力。”。这种魔法使 Rails 故障排除变得困难。可悲的是它也适用于 Grails...我希望少一些魔法。
-
这个问题和答案可能会有所帮助:stackoverflow.com/questions/5263008/…