.NET 10 & C# 14 New Features 新增功能介绍-.NET CLI工具改进

是有时你不知道要面向的所有平台,有时 .NET 本身将了解如何支持新平台,并且你也希望工具可以在那里运行。

若要使工具以这种方式工作,请将 any 运行时标识符添加到项目文件:

复制代码
<PropertyGroup>
  <RuntimeIdentifiers>
       linux-x64;
       linux-arm64;
       macos-arm64;
       win-x64;
       win-arm64;
       any
  </RuntimeIdentifiers>
</PropertyGroup>

此 RuntimeIdentifier 位于平台兼容性检查的"根"位置,由于它声明了对 任何 平台的支持,

因此打包的工具将是最兼容的工具类型-一种依赖于框架且与平台无关的 .NET DLL,这需要兼容的 .NET 运行时才能执行。

执行创建工具的 dotnet pack 时,会看到一个用于 any RuntimeIdentifier 的新包,与其他特定于平台的包以及顶级清单包一起显示。

关于dotnet tool exec

dotnet tool exec 可以使用命令执行 .NET CLI,而无需全局或本地安装。 这对于 CI/CD 或临时使用场景尤其有用。

dotnet tool exec --source ./artifacts/package/ dotnetsay "Hello, World!"

关于dotnetsay

dnx 脚本提供了一种简化的方式来执行工具。 它将所有参数转发到 dotnet CLI 进行处理,使工具的使用尽可能简单

dnx dotnetsay "Hello, World!"

关于dotnet CLI指令重命名

新的别名更符合各类CLI 标准,使 dotnet CLI 与其他工具更加一致。

相关推荐
kvo7f2JTy2 小时前
.NET 11 预览版1:CoreCLR 在 WebAssembly 上的全面集成与性能突破
服务器·.net·wasm
Howrun7772 小时前
C++ 项目测试全指南:从 0 基础到落地实操
开发语言·c++·log4j
小灰灰搞电子2 小时前
Qt UI 线程详解-阻塞与解决方案
开发语言·qt·ui
追光的蜗牛丿2 小时前
C++传递参数时什么情况下传递引用
开发语言·javascript·c++
DYuW5gBmH2 小时前
DBShadow横空出世,Dapper.net的天花板盖不住了
.net
Pocker_Spades_A2 小时前
Python快速入门专业版(五十六)——爬虫会话管理:Cookie与Session原理及实战(保持登录状态)
开发语言·爬虫·python
MwEUwQ3Gx2 小时前
深入理解 Java Deque 的设计哲学
java·开发语言·python
张人玉2 小时前
C#程序设计编程二维码识别程序
开发语言·c#·二维码
吴声子夜歌2 小时前
Node.js——dns模块
开发语言·node.js·php