我找到了一个效率很低的解决方案,但是我只在debug_mode == 1时才使用它,所以还不错。
我将eval_str写入文件,“导入该文件,然后在try {} catch {}中调用它,然后从堆栈跟踪中解析错误行…
在我的特定情况下,代码如下所示:
var errFileContent = "exports.run = "+evalStringAsAFunction+";";fs.writeFile('/home/vadmin/Alligator/lib/debugging.js', errFileContent, function (err) { var debug = require('./debugging'); try{ debug.run(args...); } catch(er){ log.debug(parseg(er)); }});


