节点:错误:ENOENT,readdir

Posted

技术标签:

【中文标题】节点:错误:ENOENT,readdir【英文标题】:Node: Error: ENOENT, readdir 【发布时间】:2014-12-18 18:55:08 【问题描述】:

我一直在尝试在我的本地机器上构建一个 nodejs 项目,当我从终端构建它时,它会抛出一串文本,其中最后一点是下面的错误消息:

starting  [Error: ENOENT, readdir '/Users/Max/github/project/mweb/sites']
  errno: 34,
  code: 'ENOENT',
  path: '/Users/Max/github/project/mweb/sites'  Error: ENOENT,
  readdir '/Users/Max/github/project/mweb/sites'

我在这里发布此错误消息的目的是询问是否有人偶然知道这意味着什么?我做了一些快速的谷歌搜索,并没有在网上找到太多解释。我意识到我没有提供太多信息,但是有没有人知道可能导致这种错误的原因,特别是关于:

readdir '/Users/Max/github/project/mweb/sites'

如果您能提供一些见解,我将不胜感激!

【问题讨论】:

***.com/questions/25093276/… 当你说“从终端构建它”时,你是什么意思?节点项目不必具有典型的“构建”步骤,因为 JS 文件只是纯文本,因此不需要编译。那么,“从终端构建”是什么意思?在我看来,有些东西希望 '/Users/Max/github/project/mweb/sites' 存在,但实际上并不存在。 ENOENT 表示某些东西正在文件系统中寻找目录条目,但没有找到。 【参考方案1】:

ENOENT 是“错误,无条目”的缩写。

Node 告诉您程序需要一个位于/Users/Max/github/project/mweb/sites 的目录,但找不到它。

很难确定为什么程序期望它是一个目录,但是由于您正在尝试构建一个项目,很可能它想将一些文件写入该位置下的磁盘。文件不能写入不存在的目录中,除非程序员主动处理这种情况,否则它将崩溃。

你可以自己在那里建立一个目录:

mkdir /Users/Max/github/project/mweb/sites

但是,修复此错误后可能会出现其他错误,因为您的环境与项目预期的不同。看看项目的README。也许您错过了一些先决条件。

根据项目的说明,一种可能是您当前的工作目录是错误的。这可能会导致路径计算不正确。通常,您希望在构建项目时处于项目的根目录。

您可以通过运行pwd 来确定您当前的工作目录。

【讨论】:

【参考方案2】:

我相信正在发生的事情是路径声明是错误的。尝试 './Users/Max/github/project/mweb/sites'

另见Node JS Error: ENOENT

【讨论】:

以上是关于节点:错误:ENOENT,readdir的主要内容,如果未能解决你的问题,请参考以下文章

Node js ENOENT 文件错误处理

错误:ENOENT:没有这样的文件或目录,打开“/moviedata.json”

如何解决Nodejs:错误:ENOENT:没有这样的文件或目录

产生 ENOENT node.js 错误

NPM 安装 ENOENT 没有这样的文件或目录

如何阅读 npm ENOENT 错误