我正面临这个问题。当我试图运行 app.js
时Error: Cannot find module './protocol/json'
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> (C:\xampp\htdocs\project\dev4\nodejs\node_modules\a
ws-sdk\lib\core.js:31:11)
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)
任何想法。?
由于
答案 0 :(得分:0)
如果您正在使用node-webkit当前目录实际上是index.html所在的位置,而不是在相关模块的当前目录中。如果您没有使用node-webkit,则只是无法指向文件的正确位置。
编辑:如果我没有弄错的话,当前目录可能不是您的想法,具体取决于node.js脚本的执行方式以及从哪里开始,但请不要抓住我;)
在任何情况下,为了避免文件路径可能出现警告,我建议您使用node.js附带的path module
只需将此代码添加到需要protocol / json的模块中。 (请注意,如果协议目录不是当前目录,它仍然无法要求它。)
var path = require('path');
var json = require( path.resolve(__dirname, './protocol/json') );
答案 1 :(得分:0)
我之所以这样,是因为我忘记了在项目中npm install aws-sdk
。我以某种方式在主目录中获得了一个node_modules
目录,该目录中有一个旧版本的aws-sdk
被使用。