Nodejs和npm错误。 模块丢失

module.js:340 throw err; ^ Error: Cannot find module 'vinyl' 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> (/home/morpheyesh/debugall/web-starter-kit/node_modules/gulp/node_modules/gulp-util/lib/File.js:1:80) 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) 

我有node.js的主要问题。 我尝试运行任何nodejs应用程序或吞咽,我得到这个错误,我尝试安装每个模块,我不断得到相同的错误,它需要一个新的模块。 有无论如何我可以安装所有的模块?

另外,我已经通过npm安装nodejs? 如何安装系统宽? Gulp已被安装在全系统(全局)中。 什么是造成这个错误?

nodejs -v给v0.10.30

`npm -v给出1.4.21

gulp 3.8.7

我正在使用谷歌networking入门套件。 我使用apt-get来安装nodejs,然后安装sass,然后安装gulp,然后安装npm。 有没有办法,我可以删除所有这些,并安装所有系统范围?

听起来好像一切都是(是?)FUBAR在那里一会儿。 如果你还没有解决这些问题,这是我会build议。

首先,官方(Debian / Ubuntu)软件包稍微落后于最新的node 。 我build议您卸载软件包nodejsnodejs-legacy然后按照以下说明获取最新版本(由nodesource打包并发布): https : //github.com/nodesource/distributions#usage-instructions

 curl -sL https://deb.nodesource.com/setup | sudo bash - sudo apt-get install -y nodejs 

现在你将有一个最近的节点(0.10.35),但是一个过时的npm 。 升级你的npm

 npm install -g npm@latest 

事情现在应该为你工作; 你应该可以在你的项目目录下运行npm install ,并且所有的依赖关系都将被正确的安装。

有一点需要注意的是,你不应该运行npm update或者npm update -g 。 正如人们所想的那样,这并不会更新当前(或全部)软件包。

尝试更新您的全球吞咽安装:

 sudo npm install --global gulp@latest 

试试这个安装gulp所需的所有插件:

 npm install gulp-jshint gulp-sass gulp-concat gulp-uglify gulp-rename --save-dev 

资料来源: http : //travismaynard.com/writing/getting-started-with-gulp

对于我卸载gulp,然后重新安装它工作正常。 这是与节点v5.0.0

 sudo npm uninstall -g gulp npm install -g gulp