我根据文章在本地安装了npm(我不记得URL)。所以我的npm包在~/.npm-packages/
。所以gulp位于~/.npm-packages/bin/gulp
,这是一个链接:gulp -> ../lib/node_modules/gulp/bin/gulp.js
当我运行which gulp
时,我得到/home/victor/.npm-packages/bin/gulp
当我进入bin目录并像./gulp.js -v
一样运行gulp时,我可以看到它有效。但是,当我全局运行gulp时,我遇到了这样的错误:
module.js:338
throw err;
^
Error: Cannot find module '/usr/lib/node_modules/gulp/node_modules/v8flags/3.28.73.flags.json'
at Function.Module._resolveFilename (module.js:336:15)
at Function.Module._load (module.js:278:25)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at Object.<anonymous> (/usr/lib/node_modules/gulp/bin/gulp.js:25:22)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Function.Module.runMain (module.js:501:10)
所以gulp试图在/ usr / lib中找到模块,但为什么呢?为什么不在我的主目录中?我在~/.npm-packages/lib/node_modules/gulp/node_modules
我非常困惑,无法工作。我试图以相同的效果重新安装它。
答案 0 :(得分:10)
这就是我为解决问题所做的工作:
就是这样。最后一条指令将创建所需的文件。
答案 1 :(得分:3)
这就是我为解决问题所做的工作:
sudo npm install gulp && sudo npm install --save del && sudo gulp build