我去了以下地方微软官方安装链接.NET Core 6.x(SDK 和运行时)它们将无法工作。
基本上,它告诉你:
wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
然后要安装 SDK,您需要运行:
sudo apt-get update && sudo apt-get install -y dotnet-sdk-6.0
然后安装运行时,它说运行:
sudo apt-get update && sudo apt-get install -y aspnetcore-runtime-6.0
但是当我运行所有这些时,我发现一个奇怪的东西,运行时“安装了一半”。
我可以运行$ dotnet --list-sdks
并且它不会报告任何 SDK。
另外,我无法运行简单的命令。$ dotnet --version
它会提示未安装 SDK,因此命令无法运行。非常令人困惑。
我也收到类似这样的错误:
无法找到包 dotnet-sdk-6.0
微软建议选择以下链接来解决这个问题:APT 故障排除部分。
尝试过 Snap 我也尝试安装 snap。同样,dotnet 运行时仍然无法正常工作。我尝试了各种删除和重新启动以及许多选项,但始终无法正确安装 SDK。
答案1
我使用 APT 包解决方案使其运行,实际上 Ubuntu 包(Jammy feed)和 Microsoft 包(PMC)之间存在冲突,更多信息请参见此处: https://github.com/dotnet/core/issues/7699
以下步骤的解决方案对我有用:
Use .NET 6 Package via PMC
- 删除所有 .NET 包
sudo apt remove 'dotnet*'
sudo apt remove 'aspnetcore*'
- 创建文件:
sudo touch /etc/apt/preferences.d/dotnet.pref
内容:
Package: *
Pin: origin "packages.microsoft.com"
Pin-Priority: 1001
- 安装 .NET SDK 6.0
sudo apt update
sudo apt install dotnet-sdk-6.0
我获得了最新版本的 SDK:
$ dotnet --list-sdks
6.0.400 [/usr/share/dotnet/sdk]
答案2
以下简单的命令已经为我解决了这个问题:
sudo apt dist-upgrade