La opción -p para dotnet run está en desuso

-p está en desuso como abreviatura de --project y el uso de -p genera una advertencia.

Esta advertencia procede del analizador de la CLI, por lo que no suele producir errores cuando las advertencias se tratan como errores. Pero si el proceso encapsula MSBuild o CI, y busca el texto "Warning" (Advertencia), la advertencia aparecerá en esa comprobación.

Versión introducida

SDK DE .NET 6.0.100

Comportamiento anterior

En versiones anteriores de .NET, -p indicaba --project.

Comportamiento nuevo

A partir de .NET 6, al pasar -p a dotnet run se genera una advertencia de que está en desuso y en su lugar se recomienda usar la opción --project completa. A pesar de la advertencia, -p sigue siendo una abreviatura válida para --project.

Motivo del cambio

-p va a quedar en desuso debido a la estrecha relación de dotnet run con dotnet build y dotnet publish. Este cambio importante es el primer paso para alinear las abreviaturas de estos comandos. Para obtener más información, vea Especificación para resolver "-p" en "dotnet run".

Si encuentra la nueva advertencia, use --project. Si tiene un argumento de proyecto en el que se incluye una instancia de = y usa la abreviatura -p, la opción se interpretará como --property.

Revise los scripts en los que se use dotnet run donde podría pasar por alto la advertencia si se utiliza -p.

Si tiene algún script en el que se use dotnet run y procesa la salida, se podría producir una interrupción. Normalmente dotnet run no genera nada propio si no hay errores, por lo que solo se obtiene la salida del programa que se ejecuta. Si tiene un script u otro programa en el que se encapsula dotnet run y analiza la salida, la advertencia sería texto inesperado y podría provocar un error.

API afectadas

N/D

Consulte también