我正在慢慢过渡到使用 ubuntu / linux WSL2 作为开发的主要平台——而不是 windows,但仍然有很多东西我不明白,需要查找,我猜这是其中之一
使用以下方法全新安装 dotnet6
sudo apt-get update && \
sudo apt-get install -y dotnet6
安装成功,但是运行 list sdks 后出现以下信息
dotnet --list-sdks
3.1.421 [/usr/share/dotnet/sdk]
5.0.408 [/usr/share/dotnet/sdk]
还注意到 dotnet6 实际上并没有安装在/usr/share/dotnet/sdk
其他 sdk 默认安装的位置,而是在/usr/lib/dotnet/dotnet6-6.0.108/sdk/6.0.108
我使用上面提到的 apt-get 时安装的
我如何获取dotnet
工具来检测 dotnet6 是否已安装?
我正在使用 oh-myzsh
答案1
这就是我让 dotnet6 工作的方法,
我发现之前我在 WSL 20.04 上使用脚本方法安装了 dotnet 3.1 和 dotnet 5 -这里然后升级到 WSL 22.04 并使用安装了 dotnet6,apt-get
之后dotnet --list-sdks
就不会再安装 dotnet6
问题就在这里——dotnet3.1 / dotnet5 不支持 SSL3,因此实际上无法工作 / 无法作为软件包安装在 WSL 22.04 上
所以我不得不手动卸载dotnet6,其他dotnet版本请参考:
sudo apt remove dotnet6
使用然后运行删除了 dotnet6 sudo apt autoremove
,以删除任何剩余的依赖项
我刚刚删除了 dotnet 文件夹,/usr/shared/
然后使用重新安装了 dotnet 6 sudo apt-get install -y dotnet6
,当然这意味着我无法在 WSL 22.04 下使用 dotnet 3.1,但至少我的dotnet
命令被识别了,我可以使用dotnet --lisk-sdks
,并且它正确地选择了 dotnet6
希望遇到此问题的人能发现这篇文章有用