可以附加到进程的Lua Debugger

我的公司有一个程序,它使用Lua嵌入其运行时,从磁盘加载.lua文件并重复执行其中定义的函数.

有没有办法附加到正在运行的进程并在.lua文件中设置断点? (我接受gdb风格的命令行调试作为Lua发行版的一部分,或者也许是提供类似Visual Studio的GUI断点的第三方IDE).

或者是因为运行时从磁盘加载随机文件的性质,我要求的是完全无意义的和不可取的?

编辑:由于Lua自己的debug.getinfo()功能可以确定给定功能的源文件,而且debug.sethook()允许为每个新的代码行输入回调,所以看起来并不荒谬.因此,从磁盘加载源代码是有道理的,并且能够告诉解释器何时从该文件执行特定的代码行.问题仍然存在:如何锁定到一个具有Lua解释器的现有进程,并注入我自己的跟踪功能(然后可以监视文件/行号对并暂停执行)?

解决方法

这是我经过多次搜索后使用的一种替代方法.如果你有一个加载lua的外部可执行文件,我可以在几分钟内完成工作. op是非常敏感的,它有一个交互式调试器,加载你的代码,你可以交互地放置调试点.它没有编辑器,但我使用scite或深红编辑器并启动可执行文件,您的主lua模块中的一行可启用调试器.

http://www.cushy-code.com/grld/ – 这个链接似乎已经死了

我已经转到eclipse.org/koneki/ldt,它有一个ide和集成调试器,推荐

心连心

相关文章

1.github代码实践源代码是lua脚本语言,下载th之后运行thmai...
此文为搬运帖,原帖地址https://www.cnblogs.com/zwywilliam/...
Rime输入法通过定义lua文件,可以实现获取当前时间日期的功能...
localfunctiongenerate_action(params)localscale_action=cc...
2022年1月11日13:57:45 官方:https://opm.openresty.org/官...
在Lua中的table(表),就像c#中的HashMap(哈希表),key和...