Windows11环境变量失效:CMD无法识别dotnet命令求助
核对环境变量的真实配置
右键「此电脑」→「属性」→「高级系统设置」→「环境变量」,重点检查系统变量里的PATH是否包含C:\Program Files\dotnet\——别只看用户变量,系统变量的优先级更高。同时检查路径有没有拼写错误、多余空格或符号(比如多打了分号)。彻底重启终端
Windows不会给已打开的CMD窗口自动刷新环境变量,必须把所有CMD/PowerShell窗口全关掉,重新打开再试dotnet命令。确认dotnet.exe存在
直接打开C:\Program Files\dotnet\文件夹,确认里面有dotnet.exe文件。如果没有,说明.NET SDK安装不完整,重新下载安装包覆盖安装。排查PATH长度或优先级问题
旧版Windows的系统PATH有字符长度限制,要是PATH太长,新添加的路径可能被截断。可以删掉PATH里没用的旧路径,或者把C:\Program Files\dotnet\移到PATH列表的最顶部,让系统优先找到它。修复文件关联
打开CMD,输入绝对路径"C:\Program Files\dotnet\dotnet.exe",如果能正常运行,说明是文件关联出问题了。切换到C:\Program Files\dotnet\目录,执行:dotnet.exe --install-manifests完成后再全局测试
dotnet命令。排除同名程序干扰
在CMD里执行where dotnet命令,看返回的路径是不是C:\Program Files\dotnet\dotnet.exe。如果有其他路径的同名文件,删掉或重命名那个文件,避免系统优先调用它。
内容的提问来源于stack exchange,提问作者samu_242

