【问题标题】:Unable to install oracledb@4.0.1无法安装 oracledb@4.0.1
【发布时间】:2020-03-06 21:21:55
【问题描述】:

我有一个 nodejs 项目,当我运行 npm 我遇到以下错误:

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

我尝试更新 package.json 以包含 "oracledb": "github:oracle/node-oracledb#v4.0.1" 但它继续显示 oracledb@3.1.2 安装。我也尝试运行 npm uninstall oracledb ,但也导致了同样的错误。

NodeJs v: 12.13.0 Python:2.7.10

【问题讨论】:

    标签: node.js npm node-oracledb


    【解决方案1】:

    寻找任何 node_modules/oracledb 目录并手动删除它。 Node.js 可能会在目录树中上下查找。

    【讨论】:

    • 谢谢克里斯。让我试一试。
    【解决方案2】:

    最后我将 NodeJs 降级到版本 8.x.x(或低于 12.x.x),因为 Node.js v12.13.0 没有预构建的 node-oracledb 二进制文件。然后我再次运行 npm i 并成功了。

    【讨论】:

    • 您应该升级以使用 node-oracledb 4。它是使用 Node.js 12 构建和测试的。并且 node-oracle 调用 Node.js 的 N-API 层,因此每个 node-oracledb 二进制文件都可以运行Node.js 的多个主要版本。
    • node-oracle 3 升级到 4 后,还是不行。
    【解决方案3】:

    尝试使用 ES 模块,将文件 .js 更改为 .mjs,并使用 require 代替 import。它对我有用,我认为 node-oracledb 现在是 ESM。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-26
      • 1970-01-01
      • 2015-08-23
      • 1970-01-01
      • 2015-07-11
      • 2022-11-03
      • 1970-01-01
      • 2021-07-26
      相关资源
      最近更新 更多