← 返回文章列表

dotnetup:.NET 工具链管理器

dotnetup 将 .NET 环境管理集中到用户目录 微软 .NET 团队于 2026 年 10 月 15 日宣布,.NET 工具链管理器 dotnetup 进入公开预览。它把 SDK 和运行时的安装、切换、更新与清理统一到同一套命令中,并将文件保存在用户自有目录,避免依赖管理员权限。 提供跨平台一致的操作方式,减少不同安装机制带来的差异。 支持并行安装多

文章封面

dotnetup 将 .NET 环境管理集中到用户目录

微软 .NET 团队于 2026 年 10 月 15 日宣布,.NET 工具链管理器 dotnetup 进入公开预览。它把 SDK 和运行时的安装、切换、更新与清理统一到同一套命令中,并将文件保存在用户自有目录,避免依赖管理员权限。

  • 提供跨平台一致的操作方式,减少不同安装机制带来的差异。
  • 支持并行安装多个 SDK、服务版本、预览通道和每日构建。
  • 可跟踪主版本、功能带或精确版本;精确版本不会在更新时自动前进。
  • 兼容现有 global.json,让项目固定的 SDK 版本继续生效。

安装并完成初始化

公告为 Zsh、Bash 和 PowerShell 提供了引导脚本。以 macOS 或 Linux 为例,可根据所用终端选择对应命令:

# macOS / Zsh
curl -fsSL https://aka.ms/dotnetup/get-dotnetup.sh | zsh

# Linux / Bash
curl -fsSL https://aka.ms/dotnetup/get-dotnetup.sh | bash

# PowerShell
irm https://aka.ms/dotnetup/get-dotnetup.ps1 | iex

随后执行初始化和查看命令:

dotnetup init
dotnetup list

初始化会配置 shell 环境,使 dotnet 命令在终端会话中可用,同时获取最新的稳定版 .NET SDK。列表命令用于查看当前由 dotnetup 管理的 SDK 与运行时。

更新与版本清理

dotnetup update 会重新解析已跟踪的 SDK 和运行时通道,并安装匹配的最新版本。例如,10.0 会跟踪 .NET 10 范围内的更新,latest 则会跟随最新稳定 SDK,包括新的主版本;明确请求的 10.0.3 仍保持固定。

dotnetup update
dotnetup runtime install aspnetcore@10.0

更新成功后,dotnetup 会清理已无需求引用的组件,但保留其他通道或精确版本仍然需要的安装。需要移除某项要求时,可使用对应的 sdk uninstall 或 runtime uninstall 命令。

预览版与每日构建可并行使用

需要提前验证修复或新运行时能力时,可以安装预览 SDK、每日运行时或完整的每日 SDK,而不影响稳定环境:

dotnetup sdk install preview
dotnetup runtime install daily
dotnetup sdk install daily

dotnetup 本身也可单独更新:

dotnetup self update

适用场景与当前限制

  • CI 场景:由于不需要 root 权限,并支持非交互执行,dotnetup 适合容器及临时 CI 工作节点按需安装指定 SDK 或每日运行时。
  • 替代脚本式安装:官方称,相比 dotnet-install 脚本,dotnetup 增加已安装 SDK 和运行时的管理、签名及校验和验证、批量安装能力和统一 CLI;“安装更快”属于官方表述,资料未提供对比数据。
  • 应用不会自动获得运行时补丁:更新本机运行时不会修补已经发布的自包含应用,使用更新后的运行时需要重新发布和部署应用。
  • Windows 系统级管理尚未完成:本轮公开预览重点是 macOS 和 Linux 的用户级使用,Windows 管理员安装支持仍在规划中。

后续规划

路线图还包括支持 Windows 管理员安装程序,以及进一步接入 GitHub Actions 和 Azure DevOps,逐步替代依赖 dotnet-install 脚本的部分流程。官方计划继续改进使用体验,并完善面向自动化助手的工具使用能力。

资料来源:Introducing dotnetup: A toolchain manager for .NET(2026-10-15)。

相关文章

从 2,500 次请求到 24 次:无需星标用户也能重建星标历史GitHub 服务可用性报告:2026 年 9 月Clairic:全新 System One 萃取模型系列tsrs 简介:将 TypeScript 移植至 Rust

一起聊聊

留下你的想法,评论审核通过后展示。

想进一步了解?

留下需求和联系方式,我们会就本次咨询与你联系。

本站使用有效期 180 天的随机浏览器标识统计访问与阅读情况,并记录访问 IP 及其大致所属地区,仅管理员可见;浏览器启用“请勿跟踪”时停止访问采集。