多个 .NET Core SDK 版本之间进行切换 global.json

由于同一台电脑可以安装多个版本的.NET Core SDK。

当安装了许多不同版本的.NET Core SDK 之后,要如何才能使用旧版dotnet 命令,执行dotnet new 或dotnet build 之类的命令?

这部分其实并不困难,只要设定global.json 即可。

首先要查询目前电脑所有安装过的SDK 版本,首先通过 dotnet --list-sdks 查看已安装的sdk版本。

复制代码
C:\Users\CC>dotnet --list-sdks
3.1.426 [C:\Program Files\dotnet\sdk]
6.0.419 [C:\Program Files\dotnet\sdk]
8.0.100 [C:\Program Files\dotnet\sdk]
8.0.102 [C:\Program Files\dotnet\sdk]

然后通过在 global.json 中设置想用的版本。

首先,我们先来示范如何快速建立 global.json 文档:

  1. 先利用 dotnet new globaljson 快速建立这个文档,这个文档默认会使用当前默认的 .NET Core SDK 版本
复制代码
D:\demo\test\globaljson>dotnet new globaljson

{
  "sdk": {
    "version": "8.0.102"
  }
}
  1. 然后将 global.json 文件内的 "version" 修改为特定 SDK 版本即可
复制代码
{
  "sdk": {
    "version": "3.1.426"
  }
}

或者是你也可以利用 --sdk-version 参数,直接给定 SDK 版本,如下所示:

复制代码
D:\demo\test\globaljson>dotnet new globaljson --sdk-version=3.1.426
The template "global.json file" was created successfully

之后使用 dotnet new console 这类命令就会使用3.1.426 版本SDK 而不是默认的版本SDK。