Error: spawn Unknown system errno 203

 在用node寫代碼的時候發現這個錯誤,google之無解,如今解決,發於此。node

事件原由爲一個全局模塊經過子進程(chind_process)調用另外一個全局模塊的命令,這個錯誤就是在命令行經過全局命令調用的時候報的app

Error: spawn Unknown system errno 203

可是父模塊直接經過node app.js 這樣的形式是能夠成功的。google

 

自己代碼大概是這樣:spa

先經過全局命令 aa(bin/aa) 啓動了父模塊的入口,而後在其中經過了chind_process.fork出了父模塊的代碼,接着在這個代碼裏再經過chind_process.exec 執行了全局全局命令 bb(bin/bb) ,而後在bb的代碼裏又調用了子模塊的入口,再fork出了子模塊的代碼。。蛋疼啊。命令行

 

以前一直覺得是父模塊exec的問題,可是最後猜想是在父進程找不到子模塊的全局命令致使的,驗證以後發現果真如此,應該就是環境丟失的問題。code

因而就在父進程中 chind_process.fork  的時候把環境merge進去了,問題解決。server

代碼大概是這樣blog

var child = cp.fork(path.resolve(__dirname, '../server/app.js'), p, {
    env : util.merge({
        'NODE_ENV': 'production'
        // 'NODE_ENV': 'development'
    }, process.env)
});
相關文章
相關標籤/搜索