如何更改 pnpm 安装全局包的位置?

How to change where pnpm installs the global packages?

问题很简单,我想更改 pnpm 安装全局包的位置。

我在 Windows 上安装了一个自定义节点,我希望所有内容都在该目录下,尤其是因为该目录在我的 PATH 而不是默认目录中。

并且为了更清楚地说明我不想设置 store 目录,它已经配置并且正在正确的位置创建,现在我想要可执行文件(*.cmd*.ps1)和我的自定义目录中的 pnpm-globals 内容。

npm 已默认安装在 node 所在的同一目录,但 pnpm 强制使用默认漫游文件夹并在 etc/npmrc 中设置 prefix没有改变。

使用所需位置设置 pnpm-prefix 配置

pnpm config set pnpm-prefix <dir>

对于 pnpm v6,使用 global-dir 而不是 pnpm-prefix:

pnpm config set global-dir <dir>

虽然<dir>可以任意,但是为了保持原来的目录结构,应该是<your npm prefix>/pnpm-global.

来自changelog

The pnpm-prefix setting is removed. Use global-dir to specify a custom location for the globally installed packages.