【问题标题】:Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: Package subpath './public/extractFiles' is not defined by "exports" in错误 [ERR_PACKAGE_PATH_NOT_EXPORTED]:包子路径 './public/extractFiles' 未由“exports”定义
【发布时间】:2021-12-28 16:20:57
【问题描述】:

运行我构建的 docker 映像后出现以下错误

错误 [ERR_PACKAGE_PATH_NOT_EXPORTED]:包子路径 './public/extractFiles' 未由 /app/node_modules/apollo-upload-client/node_modules/extract-files/package.json 中的“导出”定义

以下是我的 Dockerfile:

`FROM 节点:17.1.0

WORKDIR /app

复制 package.json ./ 复制 package-lock.json ./

复制 ./ ./ 运行 npm 安装

CMD [ "npm", "start" ]`

不知道是不是node.js版本的问题,所以想换个版本,但总是遇到同样的问题。 请帮忙

【问题讨论】:

    标签: node.js docker dockerfile


    【解决方案1】:

    同样的问题。

    在我的情况下,这是由于旧的 npm 包依赖关系而引发的。

    extract-files 版本 7 使用了已弃用的节点函数:

    (node:2520) [DEP0148] DeprecationWarning: Use of deprecated folder mapping "./public/" in the "exports" field module resolution of the package at ...\node_modules\extract-files\package.json.
    

    节点 17 引发了您发布的此错误。

    可能的解决方案:

    1. 将提取文件包更新到最新版本
    2. 使用节点 16.x

    额外提示:

    因为你正在复制 package-lock.json 你可以运行

    npm ci
    

    而不是 npm 安装。它速度更快,适用于 CI/CD 管道

    【讨论】:

      猜你喜欢
      • 2020-10-14
      • 2021-10-29
      • 2021-12-31
      • 2021-12-10
      • 1970-01-01
      • 1970-01-01
      • 2022-12-14
      • 2021-01-05
      • 2022-06-13
      相关资源
      最近更新 更多