エラー:ENOENT:そのようなファイルまたはディレクトリはありません、scandir


89

私は、cassandra dbを使用するマイクロサービスゲートウェイであるjhipsterを使用してアプリをスキャフォールディングし、mavenを使用して、scaffold.iのライブリロードのためにgulpコマンドを実行してビルドしました。

ナビゲーションバーとそのホームページに変更を加えました。これも作業ファイルであり、homeとnavbarのjsonファイルにいくつかの変更を加え、検索ボックスなどを追加するなどの小さな変更を加えました。

リロードに失敗しました。gulp&mavenを停止し、再起動しました。Mavenはビルド中ですが、ローカルホストにサイトをロードしていません

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)

誰かがこれに対する解決策を教えてもらえますか


どのバージョンのノードですか?ノード-v
ガエル・Marziou

ノードバージョン6.11.1を使用しています
Dhiresh Budhiraja 2017

回答:


228

gulpサーバーを起動するときにもこのエラーが発生することがあります。私の回避策は、実行することです。

npm rebuild node-sass

そして、その後、一気飲みがうまく始まります。


1
KeystoneJS Webサイトを$ node keystoneで実行しようとしたときに同じエラーが発生しましたが、回避策でエラーを解決しました。ありがとう
user3405291 2017年

1
「エラー:ENOENT:そのようなファイルまたはディレクトリはありません。scandir」** / node_modules / node-sass / vendor 'というエラーが発生しました。このソリューションは、問題の解決に役立ちました。ありがとう。
グナラティナム2018年

1
ありがとう。Angularプロジェクトでも同じ問題があり、このコマンドで解決しました。新しい「npminstall」ではエラーを修正できません。古い「node-sass」バージョンでは問題のようです。github.com/sass/node-sass/issues/1918
Jie

2
I(Linuxの場合)私の場合、それは事前にダウンロードし、インストーラに必要だった"nodejs node_modules /ノード-SASS /スクリプト/たinstall.js"その後、再構築
のLexA-B

1
これは私のために働いた。私はwebpackを使用していますが、すべてが機能しなくなったときでも、braintree-dropinを使用しています。ありがとうございました!
オサマイブラヒム

27

これが私のために働いたものです

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

2
これは私にとってはうまくいきますが、3行目で「nodejs」を「node」だけに置き換えました
村人

インストール中にプレインストールスクリプトは実行されません。私にも効きます。グローバルインストールディレクトリに置き換えられました:)
Mukundhan 2010年

3
node node_modules / node-sass / scripts /install.jsも機能します。
vr_driver

何らかの理由で以前に実行したことがある場合: npm config set ignore-scripts true ノードバインディングはインストールされません。これは私の問題であり、実行中です: node node_modules/node-sass/scripts/install.js 私の問題を修正しました
Morten ElmholtBak20年

はい。@vr_driverが言ったこと。実行node node_modules/node-sass/scripts/install.jsは私のためにちょうど働いたこれをありがとう!
アリエラ

4

一部のファイルはローカルバージョンのNodeJSで使用できない場合があり、NodeJSがそれに関するメッセージを送信しない場合があります。この場合--forceは役に立ちます。

npm install node-sass --force

または

npm rebuild node-sass --force

4

私の場合、次のコマンドを実行した後にのみ役立ちます。

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

そして、/node_modules/node-sass/vendorフォルダがあります


2

古いバージョンのnode-sass。に問題があります。では作成vendor folderされませんnode_modules/node-sass。node-sassのバージョンを更新しましたが、問題なく動作しました。

私の古いバージョンのnode-sassは 3.1.0

私は単にしました:

npm install node-sass@3.7.0

これで問題も解決するはずです。



1

ベンダーのディレクトリは、インストールNPM中に作成されます。node_modulesを削除して、を実行してみてください npm install


1

config.jsonファイルがあることを確認してください。次に、npm installとを実行しnpm startます。

この設定ファイルがない場合、このエラーが発生する可能性があります。



0

ノードモジュールを削除する必要はありません。sass-loaderのバージョンが異なるためです。

  1. package-lock.jsonを削除します
  2. npmアンインストールnode-sass--save
  3. npm i node-sass --save
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.