.NET 工具打包创建特定于 RuntimeIdentifier 的工具包

项目中存在时 RuntimeIdentifiers ,.NET 工具打包过程已更改。 由于 SDK 现在支持创建 特定于平台的工具RuntimeIdentifiers 因此用于确定创建工具包的平台集。

引入的版本

.NET 10

以前的行为

以前,在设置为 /> 的项目上运行时,将忽略任何项目。

新行为

从 .NET 10 开始, RuntimeIdentifiers 用于确定创建工具包的平台集。

破坏性变更的类型

这是行为 变化

更改原因

此更改允许创建优化的特定于平台的 .NET 工具包,并支持以下用例:

  • 独立工具。
  • 精简和 AOT 工具。
  • 最终可以在未安装 SDK 或运行时的平台上使用的工具。

如果只想为一部分平台创建工具,请使用 ToolPackageRuntimeIdentifiers。 如果要完全禁用 RID 特定的工具包,则应有条件地在项目文件中包括或排除 RuntimeIdentifiers 该属性。

或者,如果您希望即使指定了 RuntimeIdentifier 也保持之前的行为(框架依赖的、平台无关的 .NET 工具),请将以下属性添加到项目文件中:

<PropertyGroup>
  <CreateRidSpecificToolPackages>false</CreateRidSpecificToolPackages>
  <UseAppHost>false</UseAppHost>
</PropertyGroup>

受影响的 API

没有。