Бөлісу құралы:


Параметр -p для dotnet run устарел.

-p не рекомендуется использовать в качестве сокращения --project, а при использовании -p выдается предупреждение.

Это предупреждение поступает из средства синтаксического анализа CLI, поэтому оно обычно не вызывает сбои, если предупреждения обрабатываются как ошибки. Однако если процесс создает оболочку для MSBuild или CI и проверяет наличие текста "Warning", при такой проверке будет выдано предупреждение.

Представленные версии

Пакет SDK для .NET 6.0.100

Старое поведение

В предыдущих версиях .NET -p обозначало --project.

Новое поведение

Начиная с .NET 6 передача параметра -p в dotnet run вызывает предупреждение о том, что этот параметр устарел, а вместо него используется параметр --project. Несмотря на предупреждение, -p по-прежнему является допустимым сокращением для --project.

Причина изменения

Мы не рекомендуем использовать -p, так как dotnet run близко связано с dotnet build и dotnet publish. Это критическое изменение является первым шагом по унификации сокращений для этих команд. Дополнительные сведения см. в статье Спецификация для разрешения "-p" в "dotnet run".

При возникновении нового предупреждения используйте --project. Если у вас есть аргумент проекта, включающий =, а используется сокращение -p, параметр будет интерпретирован как --property.

Проверьте все скрипты, использующие dotnet run, в которых можно не заметить предупреждение, если используется -p.

Если у вас есть скрипты, использующие dotnet run и обрабатывающие выходные данные, может возникнуть нарушение работы. Если нет ошибок, dotnet run обычно не выводит какие-либо свои данные, поэтому вы получаете только выходные данные выполняемой программы. Если у вас есть скрипт или другая программа, которая заключает dotnet run в оболочку и анализирует выходные данные, предупреждение будет содержать неожиданный текст и может привести к сбою.

Затронутые API

Н/П

См. также