於 WSL 2 下,使用 nvm 。yarn 安裝的全域套件未納入 nvm 管控。

總結

於 WSL 2 下,使用 nvm 。
請使用 npm 安裝全域套件(雖然又慢又雜) 才能適當納入 nvm 控管。
yarn 目前是無解。

緣由

欲在 WSL 2 下使用 vue-cli,照著文件進行。
使用 nvm 及 yarn 來安裝。但卻無法執行 vue 。
使用 npm 卻成功了。
發現了一些資訊。

npm

npm 下的 vue 執行檔位於 ~/.nvm/versions/node/v14.16.1/bin/vue 。
nvm 下 npm 安裝的 vue-cli 執行檔路徑





可以看得出有納入 nvm 的控管下。

yarn

yarn 安裝 vue-cli 後,沒辦法執行 vue ,後來找到是未將 yarn global bin 路徑加入 PATH 變數。
但 yarn global bin 路徑卻是  ~/.yarn/bin 。
nvm 下 yarn global bin 路徑
再確認一下 vue 指向的路徑,卻是 ~/.config/yarn/global/node_modules/.bin/vue 。
nvm 下 yarn 安裝 vue-cli 後, vue 執行檔的路徑。

看來是真的沒有納入 nvm 的控管啊。

結論

WSL 2 下,若要使用 nvm 。
請使用 npm 安裝全域套件,才能適當地納入 nvm 控管。

留言