首页 > 解决方案 > 有没有办法将 OracleDB 与 Node 10.15 一起使用?

问题描述

我的云环境仅限于 Node v10.15.x,我需要 10+ 用于实验模块。但是,当我尝试安装 OracleDB 时,我得到...

oracledb ERR! NJS-069: node-oracledb 4.1.0 requires Node.js 10.16 or later
oracledb ERR! An older node-oracledb version may work with Node.js v10.15.0

如果我尝试将 OracleDB 降级到 3.1.2,它需要节点 8,所以这也不起作用。

oracledb ERR! NJS-067: a pre-built node-oracledb binary was not found for Node.js v12.1.0 (NODE_MODULE_VERSION=72) on win32 x64
oracledb ERR! Try compiling node-oracledb source code using https://oracle.github.io/node-oracledb/INSTALL.html#github

有没有办法让 oracledb 与 Node 10.15 一起工作?

更新

这似乎不清楚,所以让我明确一点。在本地,我有节点 12,这适用于 OracleDB 的 v 4.1.0。但是,当我尝试上传到 Cloud Foundry 时,这不起作用,因为版本是 10.15。当我降级到 3.1.2 OracleDB 时,它不再在本地编译,也不会部署到 Gaia,因为它需要一个小于 9 的节点版本,而我们需要大于 9 的其他功能。

标签: node.jsoraclenode-oracledb

解决方案


Node 6、8、10 和 11有预构建的 node-oracledb 3.1.2 二进制文件。您上面的文字说您想使用 Node.js 10.15,但您的示例显示您尝试安装在 Node.js 12: 上Node.js v12.1.0 (NODE_MODULE_VERSION=72),因此您的错误。确保 Node.js 是所需的版本 10,然后使用 node-oracledb 3.1.2 重试。

如果您想在 Node.js 10.15 中使用 node-oracledb 4,请从源代码编译。信息很明确。

但是您确实应该将 Node.js 升级到更高版本并获得所有 Node.js 安全修复程序。

更新地址注释:如果 npm 无法访问 npmjs.com 存储库,您可以手动下载https://registry.npmjs.com/oracledb/-/oracledb-3.1.2.tgz并从本地安装文件例如npm install /file/path/to/oracledb-3.1.2.tgz或在 package.json 中使用依赖项"oracledb": "file:/file/path/to/oracledb-3.1.2.tgz",类似于https://oracle.github.io/node-oracledb/INSTALL.html#selfhost


推荐阅读