【发布时间】:2021-04-29 14:32:42
【问题描述】:
我们正在使用 .NET 5 启动一个新项目。构建服务器安装了 .NET Core 3.1 SDK。我还计划在同一台服务器上并排安装 .NET 5 SDK。我可以删除 .NET Core 3.1 SDK 并使用 .NET 5 编译这两种类型的项目吗?
【问题讨论】:
-
你试过了吗?发生了什么?这里有两个不同的东西:构建工具和框架参考程序集;如果 TFM 的框架参考程序集退出,您绝对可以使用 .NET 5 构建工具来构建针对几乎任何 TFM 的东西 - 但问题是:.NET 5 是否包含 .NET Core 3.1 框架参考程序集,供其使用在构建过程中。我怀疑它没有,所以你需要两个 SDK。
-
@MarcGravell 是的,我正在尝试在我的 PC 上使用 .NET 5 SDK 构建一个 3.1 项目,目前看来还可以。我注意到 Visual Studio 2019 将 dotnet.exe 版本 5.0.5 放在 PC 上,但它也支持创建和构建 .NET 3.1 Core 项目模板。
-
您可以在命令行中使用
dotnet --info来查看安装了哪些运行时(以及安装了哪些构建SDK,但您感兴趣的可能是运行时) -
--info 更清楚地说明了它是如何工作的。我还查看了安装文件夹 C:Program Files\dotnet。 sdk 下有多个版本的子文件夹。该产品的设计清楚地考虑了并排场景。在我安装 .NET 5 后,它用新版本替换了 dotnet.exe,然后添加了一个新的 5.0.202 sdk 子文件夹。我之前的 .NET Core 3.1 项目不受影响。很不错的设计!