.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 与其他工具更加一致。

相关推荐
点心的游戏开发世界9 小时前
Unity C# 脚本学习笔记:命名空间与 using
学习·unity·c#
2601_9620715710 小时前
【Java报错已解决】org.springframework.beans.factory.BeanCreationException
java·开发语言
淡海水11 小时前
07-04-并发-ConcurrentBag-T-工作窃取WorkStealing算法
开发语言·算法·c#·bag·concurrent·workstealing
点心的游戏开发世界11 小时前
Unity C# 脚本学习笔记:泛型
学习·unity·c#
CS_Zero12 小时前
C语言sizeof是函数吗?
c语言·开发语言
-今昭-12 小时前
《V2V 迁移实战:将 VMware 虚拟机转为 OpenStack 可用 Glance qcow2 镜像》
开发语言·python
黑马程序员毕设14 小时前
基于Java的医院药品管理系统的优化设计与实现
java·开发语言·spring boot·小程序·架构·课程设计·毕设
_Twink1e15 小时前
openJiuwen 实训营 Day 1 · WorkSwarm 入门教程
开发语言·c++·openjiuwen
公子小六15 小时前
基于.NET的Windows窗体编程之WinForms滑块与上下控件
windows·microsoft·c#·.net·winforms
问天_观心15 小时前
大模型微调学习(一)
开发语言·人工智能·学习·语言模型·github