错误: ENOENT: 没有这样的文件或目录,Scandir

我使用 jhipster 搭建了一个应用,这是一个微服务网关,使用 Cassandra db,并使用 maven 来构建,这个应用在搭建之后构建得很好。

我在导航栏和主页上做了一点小小的改动。 这也是工作文件 & 作出了一些变化,在 json 文件的主页和导航栏 & 做一些小的变化,如添加搜索框和其他。

装弹失败,我关掉了机器,重新启动了。 Maven 正在构建,但同样没有在 localhost 中加载站点

当我运行 Gulp 时,它显示了这个错误。

 gulp
fs.js:952
return binding.readdir(pathModule._makeLong(path), options.encoding);
^


Error: ENOENT: no such file or directory, scandir '/home/hartron/foodnetteam/codebase/mandi/node_modules/node-sass/vendor'
at Error (native)
at Object.fs.readdirSync (fs.js:952:18)
at Object.getInstalledBinaries (/home/hartron/foodnetteam/codebase/mandi/node_modules/node-sass/lib/extensions.js:121:13)
at foundBinariesList (/home/hartron/foodnetteam/codebase/mandi/node_modules/node-sass/lib/errors.js:20:15)
at foundBinaries (/home/hartron/foodnetteam/codebase/mandi/node_modules/node-sass/lib/errors.js:15:5)
at Object.module.exports.missingBinary (/home/hartron/foodnetteam/codebase/mandi/node_modules/node-sass/lib/errors.js:45:5)
at module.exports (/home/hartron/foodnetteam/codebase/mandi/node_modules/node-sass/lib/binding.js:15:30)
at Object.<anonymous> (/home/hartron/foodnetteam/codebase/mandi/node_modules/node-sass/lib/index.js:14:35)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)

有人能告诉我这个问题的解决方法吗

181435 次浏览

我有时在启动 Gulp 服务器时也会遇到这个错误,我的解决办法是运行:

npm rebuild node-sass

然后一口气喝完。

供应商目录是在 npm 安装期间创建的 Node _ module 并运行 npm install

用新版本更新 package.json 中的 Gulp-sass

"gulp-sass": "3.1.0" // 3.1.0 or later

这是我跟随 https://github.com/dlmanning/gulp-sass/issues/508的链接

这是旧版 node-sass的一个问题。它不会在 node_modules/node-sass中创建 vendor folder。我已经更新了 Node-sass 的版本,它对我来说工作得很好。

我的旧版本的节点-sass 是 3.1.0

我就这么做了:

Npm install node-sass@3.7.0

这也能解决你的问题。

以下是我的方法

$npm update
$npm install
$node node_modules/node-sass/scripts/install.js
$npm rebuild node-sass

确保您有 config.json 文件,然后执行 npm installnpm start

如果没有这个配置文件,可能会出现这个错误。

有些文件在 NodeJS 的本地版本中可能不可用,有时 NodeJS 不会发送有关它的消息。在这种情况下,--force是有帮助的。

npm install node-sass --force

或者

npm rebuild node-sass --force

对于我来说,只有在执行以下命令之后,它才会有所帮助:

node node_modules/node-sass/scripts/install.js

然后会有 /node_modules/node-sass/vendor文件夹

不需要删除节点模块,因为它与你的 sass-loader 版本不同

  1. 删除包锁定 json
  2. Npm 卸载 node-sass —— save
  3. Npm i node-sass —— save

我只是修复了这个错误,因为我试图从错误的文件夹运行项目。

  1. 从节点 npm-cache 中删除 node-sass 文件夹
  2. Npm 重建 node-sass

我做了下面的代码,

sudo npm rebuild node-sass
mvn clean install

重建 node-sass 或者在 node-sass 重建不起作用的情况下重新安装所有程序。

npm rebuild node-sass

或者

rm -rf node_modules && npm install

或者

npm rebuild

或者

npm ci

或者 只需手动删除 node _ module 和 package-lock. json,然后运行 npm i