VS Code终端无法识别PATH变量

25

我已将一个目录添加到我的PATH中,但在VS Code终端中,我试图从该目录运行一个命令(exe),但终端无法识别它。 终端使用cmd而不是powershell。 我漏掉了什么?


你在哪里将目录添加到了PATH?是在系统级别下用SETX命令吗?还是在VS Code内部?添加后你有重启过VS Code吗? - lit
在系统级别上。而不是在VS code内部,我确实重新启动了VS code。 - neomib
无法重现。问题中没有足够的信息提供答案。 - Bill_Stewart
7个回答

29

重新启动了电脑,问题解决了 :) 显然 VS Code 没有识别到更改。


5
谢谢,但我只是重新启动了VS Code本身。 - Vattic
3
在我的情况下,重新启动VSCode没有帮助,所有内置终端都没有看到新的PATH值。退出并重新登录Windows账户有所帮助。 - AKd

20

对我来说,简单地重新启动VSC就解决了问题。


非常有帮助。谢谢。 - raiyan22
请注意,“重新启动以更新”在再次启动时不会获取新的路径。点击X关闭应用程序,检查任务管理器中是否存在VS Code进程,然后再次打开VS Code,可以通过快捷方式或在cmd窗口中输入code来打开。然后它将获取到更新后的路径。 - MikeA

7

如果你的 VS Code 终端在重新启动后显示“会话已恢复”,那么它可能仍在使用重启前的变量! 如果出现这种情况,请关闭并重新打开 vscode 窗口,或者终止并重新启动终端选项卡。


这对我来说是答案。重启后仍然存在! - user37309

5

在终端上点击垃圾桶/删除图标以正确关闭它,然后按CTRL + '打开一个新的终端效果最好。无需关闭应用程序或关闭电脑。

输入图片描述


一个“垃圾桶图标”的截图可能会有所帮助(并非每个人都称垃圾按钮为“bin”)。此外,可以通过命令面板完成此操作:“终端:杀死活动终端实例”,然后再选择“终端:创建新终端”。 - Gino Mempin
1
这对我没用。我在我的Windows机器上安装了Terraform,并在VSCode中关闭并重新打开了一个新的终端实例,但是PowerShell无法识别它(当在VSCode之外运行时,PowerShell可以正常识别该名称)。但是一旦我打开了一个新的VSCode窗口并运行了Terraform,它就正常工作了。 - undefined

1
有时候,当你错误使用.bash_profile和.bash_rc时,就会出现这个问题。
正如许多资料中所提到的,.bash_profile用于执行交互式登录shell,而.bashrc用于执行交互式非登录shell
VSCode终端是交互式非登录shell。所以,请确保你在.bashrc中正确定义了PATH和其他环境变量。

0

如果什么都不起作用,而您又不想重新启动计算机。

对于 Windows 系统:

  1. 打开命令提示符 (在 vscode 之外) 并输入 echo %PATH%
  2. 复制路径
  3. 在 vscode 中打开终端并键入 PATH=<your-path> (将 <your-path> 替换为输出的路径)

注意: 这是一种临时解决方案,如果关闭终端并打开新的终端,则失效。


0

我在文件夹“c:\Program Files\nodejs”中有一些剩余的文件,删除了该文件夹后一切正常。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接