Partilhar via


-p opção para dotnet run foi preterida

-p é preterido como uma abreviatura para --project, e usar -p gera um aviso.

Esse aviso vem do analisador CLI, portanto, geralmente não causará falhas quando os avisos forem tratados como erros. No entanto, se o seu processo envolver MSBuild ou CI e verificar o texto "Aviso", o aviso aparecerá nessa verificação.

Versão introduzida

SDK do .NET 6.0.100

Comportamento antigo

Em versões anteriores do .NET, -p indicava --project.

Novo comportamento

A partir do .NET 6, passar -p para dotnet run resulta em um aviso de que está obsoleto e deve ser usada a opção completa --project. Apesar do aviso, -p ainda é uma abreviatura válida para --project.

Motivo da mudança

Estamos a depreciar -p por causa da relação dotnet run estreita que temos com dotnet build e dotnet publish. Essa mudança disruptiva é o primeiro passo para alinhar as abreviaturas destes comandos. Para obter mais informações, consulte Especificação para a resolução de '-p' em 'dotnet run'.

Se encontrar o novo aviso, utilize --project. Se você tiver um argumento de projeto que inclua um = e usar a abreviação -p, a opção será interpretada como --property.

Analise todos os scripts que usam dotnet run onde você pode não perceber o aviso se -p for usado.

Se tiveres algum script que esteja a usar dotnet run e a processar a saída, poderás encontrar uma interrupção. dotnet run normalmente não produz nada próprio se não houver erros, então você só obtém a saída do programa que está sendo executado. Se tiver um script ou outro programa que envolva dotnet run e analise a saída, o aviso seria um texto inesperado e poderia causar uma falha.

APIs afetadas

N/A

Ver também