35

我是 nodeJS 的新手,也是 StackOverflow 的新手...

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

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

一切都运行良好,直到我再次编译我的 src。这替换了我的服务器提供的所有文件,所以我想重新启动 Node.js。我 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

任何人都知道除了卸载 Node 并重新安装它之外我还能做什么?

4

8 回答 8

128

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

于 2014-06-10T21:55:49.867 回答
18

难道 RequireJS 也在重新创建包含你的目录server.js

试试看这是否有效:

$ cd $PWD; node server.js

尽管将目录更改为当前目录似乎没有用,但其基本原理是,当一个目录在您的 shell 的当前工作目录下被删除时,shell 将处于悬空状态,因为它仍然“附加”到先前删除的目录目录。这也会影响您从该 shell 启动的任何进程(如 Node),并可能产生令人困惑的错误。

通过执行cd $PWD,您可以确保您的 shell 被“重新附加”到新创建的目录版本,从而解决了悬空状态。

于 2013-11-12T21:00:58.467 回答
6

利用

cd .

没关系。

但是问题出在服务器上

于 2018-11-07T03:51:18.040 回答
3

删除另一个终端中的文件夹并保存其文件,在文件夹结构上打开新终端,然后运行该文件。

当前终端会话中的文件夹结构不可用。当你关闭它并在你的文件目录中重新打开终端时,结构将被刷新。

于 2018-11-07T08:00:03.333 回答
3

我遇到了同样的问题。

要解决此问题,请输入以下命令:

cd ..

或者

Check your directory in Terminal/CMD. and Change it.

实际上,当您从 PC 中删除项目文件夹并且不更改目录尝试运行 React-Native 的任何命令时,就会出现此问题。

于 2018-06-13T06:12:56.397 回答
0

通过 pm2 以集群模式启动应用程序时,我遇到了同样的问题。

我做了以下工作,* 执行了 pm2 kill * 删除了 node_modules * npm install * 启动应用程序参考:https ://github.com/Unitech/pm2/issues/1244

然后它开始按预期工作。希望能帮助到你。

于 2019-03-08T11:31:04.767 回答
0

如果我们尝试从另一个 shell 对已删除的文件执行任何操作,那么我们将面临这个问题。只需重新启动系统它就会正常工作(它对我有用)

于 2019-09-06T03:29:30.920 回答
0

我建议关闭所有终端并运行以下命令

sudo npm cache clean -f 

sudo npm install -g n 

瞧:没有更多的 process.cwd 问题

于 2020-10-21T10:19:47.630 回答