当包含来自torch的包时,我已经看到了这一点。最简单的例子来自“sys”包。出于某种原因:https ://github.com/torch/sys/blob/master/init.lua#L37-L40在通过 OpenResty 启动时返回 nil,这会导致异常。
应用程序.lua
local sys = require 'sys'
运行 resty app.lua 会导致:
$ resty app.lua
/Users/vanpelt/torch/install/share/lua/5.1/sys/init.lua:40: attempt to index local 's' (a nil value)
(正在调用 sys.execute 来设置 sys.prefix)
我不知道为什么 popen 行为异常,但认为应该处理 nil 输出情况。知道为什么子进程在这种情况下失败了吗?