NodeJS错误:node.js:810 var cwd = process.cwd();

我是新的nodeJS,也是新的StackOverflow …

我开始开发我的第一个SPA,使用RequireJS将我的源文件编译成“dist”文件夹。 我有NodeJS运行一个基本的脚本来运行我的服务器:

var connect = require('connect'); connect.createServer( connect.static(__dirname) ).listen(8080); 

一切正常,直到我再次编译我的src。 这取代了我的服务器提供的所有文件,所以我虽然我会重新启动节点。 我Ctrl ^ C从这一刻起,我无法让Node再次启动。 当我尝试运行时:

 olivier$ node server.js 

我得到这个错误:

 node.js:810 var cwd = process.cwd(); ^ Error: ENOENT, no such file or directory at Function.startup.resolveArgv0 (node.js:810:23) at startup (node.js:58:13) at node.js:901:3 

奇怪的是我只是试图启动NodeJS而得到相同的错误,只是做了:

 olivier$node 

任何人都知道我可以做什么除卸载节点并重新安装?

我试图从我已经删除的目录(从另一个shell)运行节点REPL时得到了这个。 不要让这种事情发生在你身上,否则你会感到羞耻。

难道说RequireJS还在重新创build包含server.js的目录吗?

尝试看看这是否工作:

 $ cd $PWD; node server.js 

尽pipe将目录更改为当前目录似乎毫无用处,但其理由是,当目录被删除,而当前目录是shell的当前工作目录时,shell仍处于悬挂状态,因为它仍“附加”到以前删除的目录目录。 这也会影响你从这个shell启动的任何进程(比如Node),并且会产生令人困惑的错误。

通过执行cd $PWD ,你可以确保你的shell被“重新连接”到新创build的目录中,解决了悬挂状态。