-p
不再被用作 --project
的缩写,并且使用 -p
会生成警告。
此警告来自 CLI 分析程序,因此在将警告视为错误时,它通常不会导致失败。 但是,如果进程包装 MSBuild 或 CI 并检查文本“警告”,则警告将显示在该检查中。
已引入的版本
.NET SDK 6.0.100
旧行为
在以前的 .NET 版本中, -p
指示 --project
。
新行为
从 .NET 6 开始,将 -p
传递给 dotnet run
会产生弃用警告,并建议改用完整的 --project
选项。 尽管有警告,-p
仍然是 --project
的有效缩写。
更改原因
由于-p
与dotnet run
和dotnet build
关系密切,我们正弃用dotnet publish
。 此中断性变更是对齐这些命令的缩写的第一步。 有关详细信息,请参阅 “dotnet run”中解析“-p”的规范。
建议的措施
如果遇到新警告,请使用 --project
。 如果你的项目参数包含一个 =
并且使用 -p
缩写,该选项将被解释为 --property
。
查看任何使用 dotnet run
的脚本,在这些脚本中,如果使用 -p
,你可能会忽略警告。
如果有任何脚本正在使用 dotnet run
并处理输出,可能会遇到中断。
dotnet run
如果没有任何错误,通常不会输出自己的任何内容,因此你仅获取正在运行的程序的输出。 如果脚本或其他程序包装 dotnet run
和分析输出,则警告将是意外文本,并可能导致失败。
受影响的 API
无