Node.js v18.8.0 文档


目录

Corepack 核心包#

中英对照

Corepack 是一个实验性工具,可帮助您管理包管理器的版本。 它为每个支持的包管理器公开二进制代理,当被调用时,它将识别为当前项目配置的任何包管理器,如果需要,透明地安装它,最后运行它而不需要明确的用户交互。

    工作流程#

    启用该特性#

    中英对照

    由于处于实验状态,目前需要显式地启用 Corepack 才能生效。 为此,则运行 corepack enable,其将在您的环境中设置 node 二进制文件旁边的符号链接(并在必要时覆盖现有的符号链接)。

    配置包#

    中英对照

    Corepack 代理将在当前目录层次结构中找到最近的 package.json 文件以提取其 "packageManager" 属性。

    升级全局版本#

    中英对照

    当在现有项目之外运行时(例如运行 yarn init 时),Corepack 将默认使用与每个工具的最新稳定版本大致对应的预定义版本。 可以通过运行 corepack prepare 命令以及您希望设置的包管理器版本来覆盖这些版本:

    
    

    离线工作流程#

    中英对照

    很多生产环境没有网络访问权限。 由于 Corepack 通常直接从其仓库下载包管理器版本,它可能与此类环境发生冲突。 为避免这种情况发生,请在您仍有网络访问权限时调用 corepack prepare 命令(通常在您准备部署映像的同时)。 这将确保即使没有网络访问,所需的包管理器也可用。

    支持的包管理器#

    中英对照

    以下二进制文件通过 Corepack 提供:

    常见问题#

    Corepack 如何与 npm 交互?#

    中英对照

    虽然 Corepack 可以像任何其他包管理器一样支持 npm,但默认情况下不启用它的 shim。 这有几个后果:

      运行 npm install -g yarn 不起作用#

      中英对照

      npm 防止在进行全局安装时意外覆盖 Corepack 二进制文件。 为避免此问题,请考虑以下选项之一:

        返回顶部