如何为 VS Code 的集成终端设置节点版本?
Posted
技术标签:
【中文标题】如何为 VS Code 的集成终端设置节点版本?【英文标题】:How do I set the version of node for VS Code's integrated terminal? 【发布时间】:2018-09-07 20:29:55 【问题描述】:不,这不是重复的问题。我已阅读有关 VS 代码的文档以及有关堆栈溢出的其他帖子。问题依旧...
我可以用nvm设置节点版本,但是VS代码中的终端恢复到7.6.0,这与yarn有问题!
编辑: [在 VS 代码之外从 zsh 添加调试信息]
λ ~ which node
/Users/Freddy/.nvm/versions/node/v9.6.1/bin/node
λ ~ node -v
v9.6.1
λ ~ nvm --version
0.33.8
我使用 nvm 来管理我的不同版本的节点,除了 VS Code 之外,它工作得非常好。
在 VS Code 终端中,节点版本总是恢复到 v7.6.0:
node -v
v7.6.0
λ ~/auth0-profile nvm use default
Now using node v9.6.1 (npm v5.6.0)
λ ~/auth0-profile node -v
v7.6.0
λ ~/auth0-profile nvm current
system
λ ~/auth0-profile nvm ls
v8.9.4
v8.10.0
v9.6.1
-> system
default -> 8.10.0 (-> v8.10.0)
system -> 9.6.1 (-> v9.6.1)
node -> stable (-> v9.6.1) (default)
stable -> 9.6 (-> v9.6.1) (default)
iojs -> N/A (default)
即使我将 node 设置为使用 v9.6.1 版本,它也会恢复到 7.6,这与 yarn 存在问题。而且我不知道为什么nvm current
显示系统为 9.6.1 时会导致“系统”,但 node -v
仍显示 7.6.0。
有什么想法吗?
EDIT2: [根据vscode 上的文档,我在launch.json 中设置了运行时版本,但这不起作用]
我发现如果我在 vscode 中从终端运行which node
,它会返回/usr/local/bin/node
。为了解决这个问题,我尝试将launch.json文件中的运行时可执行文件设置为.nvm目录"~/.nvm/versions/node/v8.10.0/bin"
中的可执行文件,但我仍然没有成功。
【问题讨论】:
Visual Studio Code to use node version specified by NVM的可能重复 【参考方案1】:Visual Studio Code to use node version specified by NVM
我遇到了同样的问题,但像“nvm use default”和“nvm alias...”这样的答案没有帮助。
显然,当我使用 zsh 时,osx 的默认 shellArgs 设置为 bash。我通过将用户设置中的 shellArgs 设置为空数组来解决问题:
"terminal.integrated.shellArgs.osx": []
【讨论】:
【参考方案2】:我还不能发表评论,所以我会试着从这里帮助你。我和你一样苦苦挣扎,找到了解决办法。我发布了一个答案here,也许它可以帮助您解决其中提到的资源。我不使用 zsh 而是使用 bash,但将其适应您的“个人资料”并不难。
【讨论】:
以上是关于如何为 VS Code 的集成终端设置节点版本?的主要内容,如果未能解决你的问题,请参考以下文章