问题
Before I can run gulp
in my project I need to run npm install
. This works except on my computer, because I get the following error:
Error: Cannot find module 'socket.io'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
...
I can fix this with
$> npm install socket.io
Now when I do the install command again I get
Error: Cannot find module 'di'
...
When I install di
and run the install command again I get:
Error: Cannot find module 'log4js'
I think that this might continue for a very long time. Any suggestions what is going on here and how to fix this ?
回答1:
I've faced the same problem when bootstrapping a MEAN application and add each missing dependencie with npm install packageName --save
was not an option so I came across to npm-install-missing whom has saved my life :)
Installation
npm install -g npm-install-missing
Usage
npm-install-missing
回答2:
Running npm install
will install all dependencies that are specified in the package.json
. Seems like you have quite a few dependencies that are not defined that way. Use npm install packageName --save
and npm will add the package to your package.json
.
回答3:
I am using the same version of npm/node. Sometimes, it is like npm is "lost". What I suggest is :
- rm of your node modules (at least the one that is concerned)
- npm cache clean
- run "npm install" several times, until all dependencies are resolved and no message are displayed
回答4:
It seems that gulp need 'karma' dependencies (socket.io ,di ,log4js
...) so you will have to run :
npm install karma
so just runing this command solved the problem, and all should be good, the same thing happens with grunt as well for some reasons.
回答5:
To resolve missing npm modules run:
sudo npm install -g npm-install-missing
来源:https://stackoverflow.com/questions/24652681/npm-install-is-missing-modules