我使用npm package oracledb运行节点应用程序。我能够成功连接到远程oracle12c db。现在问题是,在生产框中我无法安装所有先决条件,所以我压缩工作代码并解压缩到新的Windows框(node.js和oracle客户端库安装了正确的路径)。但是当我启动节点服务器时,我收到错误。有什么我想念的吗?请指导。感谢
C:\node_modules\oracledb\lib\oracledb.js:38
throw err;
^
Error: The specified module could not be found.
\\?\C:\node_modules\oracledb\build\Release\oracledb.node
at Object.Module._extensions..node (module.js:664:18)
at Module.load (module.js:554:32)
at tryModuleLoad (module.js:497:12)
at Function.Module._load (module.js:489:3)
at Module.require (module.js:579:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (C:\node_modules\oracledb\lib\oracledb.js:35:19)
at Module._compile (module.js:635:30)
at Object.Module._extensions..js (module.js:646:10)
at Module.load (module.js:554:32)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! xyz@1.0.0 start: `node server.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the xyz@1.0.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
答案 0 :(得分:3)
检查installation instructions about copying binaries between machines。您可能缺少Visual Studio Redistributable。
如果您有Oracle客户端12.2,请安装Visual Studio 2013 Redistributable。对于Oracle客户端12.1,请安装Visual Studio 2010 Redistributable。对于Oracle客户端11.2,请安装Visual Studio 2005 Redistributable。
即将推出的node-oracledb v2具有预构建的二进制文件(以及更好的引导程序错误消息)。您可以尝试使用npm install oracledb@dev
安装v2的开发版本。生产版本即将推出。