-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
无