如何解决错误消息“找不到模块‘缩写’

Posted

技术标签:

【中文标题】如何解决错误消息“找不到模块‘缩写’【英文标题】:How to solve error message "Cannot find module 'abbrev' 【发布时间】:2014-08-18 07:19:12 【问题描述】:

我的问题与How do I resolve "Cannot find module" error using Node.js? 非常相似,但我无法使用给出的答案中提供的信息解决我的问题。

我尝试运行 UNCSS grunt 插件,但是当我尝试安装它时(npm install grunt-uncss --save-dev),我收到以下错误:

$ npm install grunt-uncss --save-dev

module.js:340
    throw err;
          ^
Error: Cannot find module 'abbrev'
    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> (/usr/local/Cellar/node/0.10.20/lib/node_modules/npm/node_modules/nopt/lib/nopt.js:10:14)
    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)

根据上面提到的答案,我尝试在项目文件夹和全局安装这个“缩写”模块,但这会产生完全相同的错误:(

npm install -g abbrev

module.js:340
    throw err;
          ^
Error: Cannot find module 'abbrev'
    at Function.Module._resolveFilename (modu
   (ETCETERA)

主要问题:如何解决此错误?

子问题: 1) 我想知道,这是 RUBY 错误还是 NODE.JS 错误?我注意到'abbrev'也是一个Ruby命令......? 2) 或者,这个问题是否会因为我试图解决 bus error: 10 而出现? (http://shoogledesigns.com/blog/blog/2014/01/13/gruntjs-running-watch-task-waiting-bus-error-10/)

我希望这个问题听起来不会太明显。我是一名前端开发人员,但远非命令行大师!

【问题讨论】:

您的问题是什么?它是 node.js 上的红宝石错误吗?或者,如何解决? 我指定了问题,谢谢。我想解决问题,但我也很好奇“为什么” 请在您的项目中尝试npm ls并添加它。 谢谢,...它会产生与上述相同的错误!因此,... npm 坏了...? 你试过 npm cache clear 吗? 【参考方案1】:

解决方案:重新安装 node.js,正如我在上一条评论中提到的那样。

每次我运行 NPM 时,Tell-tale 都是相同的错误消息。

【讨论】:

【参考方案2】:

删除node_modules 然后重新安装我的package.json 中指定的模块对我有用。

我通过运行以下命令来做到这一点:

rm -rf node_modules
npm install

【讨论】:

应该是“rm -rf node_modules”【参考方案3】:

其他两个答案都没有为我解决这个问题,但两者都解决了。

【讨论】:

【参考方案4】:

对我来说,它已经通过更新 npm 本身解决了:

 sudo npm install -g npm

【讨论】:

我很怀疑,但是是的,这解决了我的问题。至少先尝试一下!【参考方案5】:

我有一个非常相似的问题。删除整个 node_modules 文件夹并重新安装它对我有用。我通过运行以下命令来做到这一点:

rm -rf node_modules
npm install

【讨论】:

【参考方案6】:

Windows 用户在这里。 我尝试重新安装 Node.js(使用安装程序),但没有帮助。我必须运行rm -rf node_modules 以删除错误中列出的位置(中途)的“node_modules”文件夹。

在 OP 示例中,它位于 目的。 (/usr/local/Cellar/node/0.10.20/lib/node_modules/

类似于 C:\Users\nick\AppData\Roaming\npm\node_modules

【讨论】:

以上是关于如何解决错误消息“找不到模块‘缩写’的主要内容,如果未能解决你的问题,请参考以下文章

Spring:如何解决验证错误->错误代码->错误消息

如何解决与 rbenv 相关的终端错误/消息

如何解决错误消息“找不到模块‘缩写’

如何解决错误消息“没有名为 websocket 的模块”

如何解决 HTTP“404”和“405”错误消息?

如何解决 smtp 错误:发送消息? [复制]