vscode powershell 中的 PATH 中缺少货物

Inc*_*tic 3 windows rust visual-studio-code

我刚刚在新的 Windows 机器上安装了 Rust 和 VS Code。

我已经确认Rust安装成功并已添加到PATH中

PS C:\Users\Steven> cargo --version
cargo 1.53.0 (4369396ce 2021-04-27)

PS C:\Users\Steven> $env:path -split ";"
C:\Windows\system32
C:\Windows
C:\Windows\System32\Wbem
C:\Windows\System32\WindowsPowerShell\v1.0\
C:\Windows\System32\OpenSSH\
C:\Users\Steven\.cargo\bin
C:\Users\Steven\AppData\Local\Microsoft\WindowsApps

C:\Users\Steven\AppData\Local\Programs\Microsoft VS Code\bin
Run Code Online (Sandbox Code Playgroud)

但是当我启动 vscode 并尝试从集成终端使用货物时,它丢失了。VS Code 中集成 powershell 终端的 PATH 也不同。

PS C:\Users\Steven> cargo --version
cargo : The term 'cargo' is not recognized as the name of a cmdlet, function, script file, or operable program.

PS C:\Users\Steven> $env:path -split ";" 
C:\Program Files\Mozilla Firefox
C:\Windows\system32
C:\Windows
C:\Windows\System32\Wbem
C:\Windows\System32\WindowsPowerShell\v1.0\
C:\Windows\System32\OpenSSH\
C:\Users\Steven\AppData\Local\Microsoft\WindowsApps
Run Code Online (Sandbox Code Playgroud)

为什么 VSCode 的 ppowershell 中的 PATH 不同?

如何在 VSCode 的集成终端中使用货物?

Fra*_*gné 6

如果您刚刚安装 Rust,您可能需要从 Windows 注销并重新登录才能正确应用对环境变量的更改。

每个进程都有自己的一组环境变量。通常,环境变量是从其父进程继承的。当您安装 Rust 时,rustup 在 Windows 注册表中配置了用户级环境变量,但这不会刷新已运行进程的环境。

Windows 资源管理器/文件资源管理器可以通过某些方式在生成进程之前重新加载系统/用户环境变量,而有些方式则不会。大多数其他程序甚至不会打扰。注销并从头开始会更容易。

在其他操作系统上也是如此(尽管系统/用户环境变量显然存储在登录脚本中,而不是存储在注册表中)。