使用 dotnetup 更新已跟踪的 .NET 安装

Note

dotnetup 为公共预览版。 在正式发布之前,其功能和行为可能会更改。

dotnetup 将请求的通道与解析的版本分开存储。 更新会再次处理每个滚动通道。

这些更新不会更新 dotnetup 可执行文件。 若要更新工具本身,请使用 dotnetup self update。

选择更新范围

使用以下命令之一:

# Update all tracked SDK and runtime requirements.
dotnetup update

# Update SDK requirements only.
dotnetup sdk update

# Update SDK and runtime requirements.
dotnetup sdk update --all

# Update runtime requirements only.
dotnetup runtime update

运行时更新包括核心.NET和 ASP.NET Core运行时。 在Windows上,它们还包括Windows桌面运行时要求。

限制安装根目录

默认情况下,更新可以处理所选清单中对所有根节点的要求。 使用 --install-path 来限制此操作:

dotnetup update --install-path D:\tools\dotnet

更新存储库文件

SDK 要求可使用 global.json 作为其源。 若要将新解析的 SDK 版本写回每个源文件,请运行:

dotnetup sdk update --update-global-json

如果没有此选项,dotnetup 将安装更新,但不编辑存储库文件。

在对已更改的 global.json 源进行垃圾回收刷新之前,更新会处理存储的要求。 更改存储库 global.json 后,请在更新其已存储的依赖项之前,从该存储库运行 dotnetup sdk install。 否则,第一个更新仍可能处理以前的要求。

了解更新行为

  • 跳过确切的 SDK 和运行时版本 - 显式请求它们,因此永远无法更新。
  • 每个安装要求都是独立处理的。
  • 在某一项失败后,所有安装要求的处理都会继续。
  • 该命令在处理所有剩余安装要求后报告失败。
  • 更新成功后会运行垃圾回收——这一清理过程会删除任何你的已配置安装要求实际上并不需要的已安装组件。
  • 如果另一个要求仍需要它,则已安装的版本会保留。

查看结果

验证跟踪的状态和磁盘上的安装:

dotnetup list

对于计算机可读输出:

dotnetup list --format json

删除已跟踪的需求

若要删除 SDK 要求,请提供其存储的通道或确切版本:

dotnetup sdk uninstall 10.0.1xx

卸载会删除该依赖项,然后在所选根目录中清理未引用的安装。 如果其他要求阻止所请求的安装,或者清理会删除其他安装,则会发出警告。 在确认操作之前,请查看这些警告。 在非交互式自动化中,使用 --non-interactive 跳过确认,而不是跳过警告。

对于运行时要求,请使用 dotnetup runtime uninstall。 有关详细信息,请参阅 SDK 卸载 和 运行时卸载。

另请参阅