我正在使用node.js在ubuntu服务器上运行
JavaScript代码
我收到了这个错误.
我收到了这个错误.
module.js:340 throw err; ^ Error: Cannot find module './lib/compat' 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/lib/nodejs/node_modules/express/node_modules/depd/index.js:11:24) 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)
如何调试此错误?
编辑:使用这些依赖项.
var express = require('express'); var fs = require('fs'); var request = require('request'); var cheerio = require('cheerio');
解决方法
问题不是直接在您的代码中,而是在您正在使用的其中一个模块的依赖项中.您在错误消息的这一行看到它:
at Object.<anonymous> (/usr/lib/nodejs/node_modules/express/node_modules/depd/index.js:11:24)
express模块有一个名为depd的依赖项,这是一个有问题的模块.
你是如何安装模块的?
安装快递时可能存在一些问题.
lib / compat文件夹是directly part of depd,所以没有理由错过它.
您可能想要执行以下操作:
npm uninstall express npm install express --save
这将重新安装快递,希望解决问题.