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

相关推荐
一脸dio样7542 分钟前
第5章 保护模式进阶,向内核迈进
linux·开发语言
小叮当⇔12 分钟前
M4A 转 MP3 桌面转换器(PyQt5 + FFmpeg)
开发语言·qt·ffmpeg
aq553560016 分钟前
Laravel9.x新特性全解析
java·开发语言·数据库
珹洺24 分钟前
C++AI多模型聊天系统(三)AI多模型(豆包/Kimi/千问)接入与实现
开发语言·c++·人工智能
Bat U1 小时前
JavaEE|多线程(五)
java·开发语言·jvm
玉小格1 小时前
对py作业的一个复盘
开发语言·python
Rust研习社1 小时前
使用 Tonic 构建高性能异步 gRPC 服务
开发语言·网络·后端·http·rust
captain3761 小时前
JDBC(Java Data Base Connectivity)
java·开发语言
南境十里·墨染春水2 小时前
C++笔记 STL——vector
开发语言·c++·笔记
故事和你912 小时前
洛谷-算法2-2-常见优化技巧3
开发语言·数据结构·c++·算法·深度优先·动态规划·图论