我是新手Perl,我有以下问题.
我有一个日志输出,我已经找到了这个日志输出来自哪里.我的意思是打印它的某个模块中的子程序.
现在,例如在Javavia中,Eclipse我将使用eg Call hierarchy和其他实用程序来查看如何/何时/谁调用该方法并找出如何重现我需要和调试的内容.
我怎么能这样做Perl?通过例如grep?如果我grep为模块名称,我得到的线条范围从use A require A C::B::A B::A C::B::A::some_routine C::B::A::some_other_routine等等.
最重要的是,我担心也许我感兴趣的例程不是直接调用,但一些脚本例如运行我感兴趣的模块通过一些因为我的无知而模糊(对我而言Perl).
那么我将如何Perl以最有效的方式调试内容呢?你的Perl大师们建议我做些什么来提高效率?
在Perl调试器下运行程序:
perl -d scriptname arguments...
Run Code Online (Sandbox Code Playgroud)
在您关心的函数中设置断点,当程序在断点处停止时,使用Tdebugger命令显示堆栈跟踪,该跟踪将显示调用函数的位置.
根据您的评论,我不确定这实际上是否符合您的要求.也许你想要的是Perl应用程序的交叉引用?请参阅常见问题解答如何交叉引用我的Perl程序?