错误码

ERR_PNPM_UNEXPECTED_STORE

存在模块目录并链接到不同的存储目录。

如果您有意更改了存储目录,请运行 pnpm install ,pnpm 将使用新存储重新安装依赖。

ERR_PNPM_NO_MATCHING_VERSION_INSIDE_WORKSPACE

项目具有工作区中不存在的工作区依赖项。

例如,包 foodependencybar@1.0.0

  1. {
  2. "name": "foo",
  3. "version": "1.0.0",
  4. "dependencies": {
  5. "bar": "workspace:1.0.0"
  6. }
  7. }

但是,工作区中只有 bar@2.0.0,所以 pnpm install 将失败。

要修复此错误,所有使用 工作区协议 的依赖项需要被更新至当前工作区中的版本。 这可以手动完成,也可以使用 pnpm -r update 命令完成。

ERR_PNPM_PEER_DEP_ISSUES

项目具有未解析的对等依赖关系或对等依赖关系与所需范围不匹配,那么 pnpm install 将失败。 要解决此问题,请安装缺少的对等依赖项。

您也可以使用 package.json中的 pnpm.peerDependencyRules.ignoreMissingpnpm.peerDependencyRules.allowedVersions 字段选择性地忽略这些错误。

ERR_PNPM_OUTDATED_LOCKFILE

如果不更改 lockfile 就无法执行安装,则会发生此错误。 如果有人更改了存储库中的 package.json 文件,之后没有运行 pnpm install ,这可能会发生在 CI 环境中。 或者有人忘记提交 lockfile 文件的更改。

要修复此错误,只需运行 pnpm install 并将 lockfile 的更改提交。

ERR_PNPM_TARBALL_INTEGRITY

This error indicates that the downloaded package’s tarball did not match the expected integrity checksum.

If you use the npm registry (registry.npmjs.org), then this probably means that the integrity in your lockfile is incorrect. This might happen if a lockfile had badly resolved merge conflicts.

If you use a registry that allows to override existing versions of a package, then it might mean that in your local metadata cache you have the integrity checksum of an older version of the package. In this case, you should run pnpm store prune. This command will remove your local metadata cache. Then you can retry the command that failed.

But also be careful and verify that the package is downloaded from the right URL. The URL should be printed in the error message.