Skip to main content

安装

通过脚本安装#

On POSIX systems, you may install pnpm even if you don't have Node.js installed, using the following script:

curl https://get.pnpm.io/install.sh | bash

You may use the pnpm env command then to install Node.js.

在 Windows (PowerShell)上:

(Invoke-WebRequest 'https://get.pnpm.io/v6.14.js' -UseBasicParsing).Content | node - add --global pnpm

上述安装脚本是经过签名的。这里是验证方法

通过 npm 安装#

npm install -g pnpm

通过 npx 安装#

npx pnpm add -g pnpm

升级#

安装 pnpm 之后,就无需使用其它软件包管理器来更新 pnpm 了。 你可以让 pnpm 自己来更新自己,如下所示:

pnpm add -g pnpm
tip

你是否需要在 CI 服务器上使用 pnpm?请参阅 持续集成 章节。

兼容性#

以下列表列出了以往的 pnpm 版本和对应支持的 Node.js 版本。

Node.jspnpm 1pnpm 2pnpm 3pnpm 4pnpm 5pnpm 6
Node.js 4✔️
Node.js 6✔️✔️
Node.js 8✔️✔️✔️
Node.js 10✔️✔️✔️✔️✔️
Node.js 12✔️✔️✔️✔️
Node.js 14✔️✔️✔️✔️
Node.js 16???️?️?️✔️

Troubleshooting#

If pnpm is broken and you cannot fix it by reinstalling, you might need to remove it manually from the PATH.

Let's assume you have the following error when running pnpm install:

C:\src>pnpm installinternal/modules/cjs/loader.js:883  throw err;  ^
 
Error: Cannot find module 'C:\Users\Bence\AppData\Roaming\npm\pnpm-global\4\node_modules\pnpm\bin\pnpm.js'←[90m    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:880:15)←[39m←[90m    at Function.Module._load (internal/modules/cjs/loader.js:725:27)←[39m←[90m    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)←[39m←[90m    at internal/main/run_main_module.js:17:47←[39m {  code: ←[32m'MODULE_NOT_FOUND'←[39m,  requireStack: []}

First, try to find the location of pnpm by running: which pnpm. If you're on Windows, run this command in Git Bash. You'll get the location of the pnpm command, for instance:

$ which pnpm/c/Program Files/nodejs/pnpm

Now that you know where the pnpm CLI is, open that directory and remove any pnpm-related files (pnpm.cmd, pnpx.cmd, pnpm, etc). Once done, install pnpm again and it should work as expected.

Uninstalling pnpm#

If you need to remove the pnpm CLI from your system and any files it have written to your disk, see Uninstalling pnpm.