尝试运行我已经工作了很长时间的Node.js程序,现在却突然......不行。我试图找出问题,我认为如果我在这里发布以试图追踪它会有所帮助。这是日志输出:
events.js:154
throw er; // Unhandled 'error' event
^
Error: write EPIPE
at exports._errnoException (util.js:856:11)
at WriteWrap.afterWrite (net.js:767:14)
坦率地说,我不知道为什么它会抛出一个EPIPE错误,我已经检查过没有什么可以干扰的运行,并且它在完全相同的shell中运行它以前有过。如果有任何我应该添加的内容,请告诉我。
答案 0 :(得分:1)
引用doc
EPIPE
:在管道,套接字或FIFO上写入,没有进程来读取数据。通常在net
和http
层遇到,表示正在写入的流的远程端已关闭。
当另一端终止连接时,蒸汽可能是pipe
或socket
。这是一个运行时错误;没有什么可以做,但也关闭你的目的。
请检查程序中是否有大文件或长 http包请求。
在这种情况下,使用以下代码可以使您的程序成功退出:
process.stdout.on('error', function( err ) {
if (err.code == "EPIPE") {
process.exit(0);
}
});
答案 1 :(得分:0)
就我而言,问题在于question
中讨论的inotify观察者数量这是original listen documentation
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
答案 2 :(得分:0)
安装 libfontconfig 可能会解决此问题。尝试从服务器下载PDF时遇到了相同的问题。而 libfontconfig 解决了该问题。
sudo apt-get install libfontconfig
注意:解决方案来源-> Error: write EPIPE