You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu/PopOS 22.04下.NET SDK已安装却无法识别的问题求助

解决.NET SDK已安装但无法识别的问题

问题现象

此前.NET SDK可正常使用,更新系统与VSCode后,执行dotnet watch run命令时出现报错:

* You intended to execute a .NET application:
      The application 'watch' does not exist.
  * You intended to execute a .NET SDK command:
      No .NET SDKs were found.

Download a .NET SDK:
https://aka.ms/dotnet-download

Learn about SDK resolution:
https://aka.ms/dotnet/sdk-not-found

已尝试操作

  • 执行sudo apt install dotnet-sdk-6.0,系统提示已安装最新版本:
sudo apt install dotnet-sdk-6.0
[sudo] password for robinson: 
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
dotnet-sdk-6.0 is already the newest version (6.0.400-1).
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
  • 执行dotnet --info,结果显示未找到已安装的SDK:
global.json file:
  Not found

Host:
  Version:      6.0.8
  Architecture: x64
  Commit:       55fb7ef977

.NET SDKs installed:
  No SDKs were found.

.NET runtimes installed:
  Microsoft.AspNetCore.App 6.0.8 [/usr/lib/dotnet/dotnet6-6.0.108/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 6.0.8 [/usr/lib/dotnet/dotnet6-6.0.108/shared/Microsoft.NETCore.App]
  • 检查路径信息:
    • which dotnet结果:/usr/bin/dotnet
    • echo $PATH结果:
/home/robinson/.nvm/versions/node/v18.7.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/robinson/.dotnet/tools

系统环境

  • 系统:PopOS(x64架构)
  • 用户:Linux新手

解决方案

1. 确认SDK实际安装路径

先验证SDK是否真的在系统中存在,执行以下命令查看SDK目录:

ls /usr/lib/dotnet/sdk/

如果输出包含6.0.400目录,说明SDK已安装,问题出在路径识别上。

2. 临时配置DOTNET_ROOT环境变量

dotnet需要明确SDK的根目录路径,执行以下命令临时设置:

export DOTNET_ROOT=/usr/lib/dotnet

设置完成后再次执行dotnet --info,如果能看到已安装的SDK,说明配置生效。

3. 永久配置环境变量

为了让配置在每次登录时自动生效,需要修改用户配置文件:

  • 打开bash配置文件(如果使用zsh则替换为~/.zshrc):
nano ~/.bashrc
  • 在文件末尾添加以下内容:
export DOTNET_ROOT=/usr/lib/dotnet
export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools
  • 保存退出后,执行以下命令使配置立即生效:
source ~/.bashrc

4. 修复dotnet符号链接(可选)

如果/usr/bin/dotnet是错误的符号链接,重新创建正确链接:

sudo rm /usr/bin/dotnet
sudo ln -s /usr/lib/dotnet/dotnet /usr/bin/dotnet

重启终端后再次执行dotnet --info检查。

5. 重新注册.NET SDK

执行以下命令重新注册SDK并恢复工具:

sudo /usr/lib/dotnet/dotnet --list-sdks
sudo /usr/lib/dotnet/dotnet tool restore

内容的提问来源于stack exchange,提问作者Robinson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 01:24:30