Help us understand the problem. What is going on with this article?

gulpが実行出来なくてハマった時に確認したこと

More than 3 years have passed since last update.

先日とある理由でgulpを使ったのですが、思ったように実行できなかった時のメモ。

エラー内容

npm install 実行時

npm ERR! cb() never called!

出力内容の最後のあたりにというエラーが。

gulp serve 実行時

そのまま無視してgulp実行。

Error: Cannot find module 'wrappy'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/Users/maximum80/sample/node_modules/gulp/node_modules/orchestrator/node_modules/end-of-stream/node_modules/once/once.js:1:76)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)

とか

Error: Cannot find module 'json3'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/Users/maximum80/sample/node_modules/gulp/node_modules/orchestrator/node_modules/end-of-stream/node_modules/once/once.js:1:76)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)

など、やり直すたびに何かしらのModuleがない、と怒られます。

ハマった原因

どうやらnpm installを実行した際に、対象のmoduleが正しくインストールされなかった模様。
また、正しくインストールされないのはキャッシュが悪さしてたりバージョンの問題が原因にあるとのことで、以下の内容を試しました。

確認したこと

1. npm cacheの確認

$ npm cache clean

で、キャッシュを削除。

2. npmのversionの確認

npmのGithub上で2014年に同様のエラーについてのissueが展開されていたので、「もしかしてバージョンアップしたら解決するかも?」と思ってバージョンアップしました。

$ npm update -g npm

を実行。上記が完了してしたら、改めてnpm installしてgulpを実行したら僕の場合は正常に動いてくれました。ただ、明確な原因はわかっていないため、常にキャッシュとバージョンを意識するという事を一旦肝に命じておきます。

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away