Udostępnij za pośrednictwem


-p opcja dla dotnet run jest przestarzała

-p jest przestarzały jako skrót dla --project, a użycie generuje -p ostrzeżenie.

To ostrzeżenie pochodzi z analizatora interfejsu wiersza polecenia, więc zwykle nie powoduje błędów, gdy ostrzeżenia są traktowane jako błędy. Jeśli jednak proces opakowuje program MSBuild lub ciągłą integrację i sprawdza tekst "Ostrzeżenie", w tym zaewidencjonowaniu pojawi się ostrzeżenie.

Wprowadzona wersja

Zestaw .NET SDK 6.0.100

Stare zachowanie

W poprzednich wersjach platformy -p .NET wskazano --projectwartość .

Nowe zachowanie

Począwszy od platformy .NET 6, przekazywanie -p do dotnet run powoduje wyświetlenie ostrzeżenia, że jest przestarzałe i zamiast tego należy użyć pełnej --project opcji. Pomimo ostrzeżenia, -p nadal jest prawidłowym skrótem dla .--project

Przyczyna wprowadzenia zmiany

Przestarzaliśmy -p z powodu bliskiej relacji dotnet run z elementami dotnet build i dotnet publish. Ta zmiana powodująca niezgodność jest pierwszym krokiem w celu wyrównania skrótów dla tych poleceń. Aby uzyskać więcej informacji, zobacz Spec for resolving '-p' in 'dotnet run'.

Jeśli zostanie wyświetlone nowe ostrzeżenie, użyj polecenia --project. Jeśli masz argument projektu zawierający argument = i używasz skrótu -p , opcja zostanie zinterpretowana jako --property.

Przejrzyj wszystkie skrypty, które używają dotnet run miejsca, w którym można pominąć ostrzeżenie, jeśli -p jest używane.

Jeśli masz skrypty, które używają dotnet run i przetwarzają dane wyjściowe, możesz napotkać przerwę. dotnet run zazwyczaj nie generuje żadnych danych wyjściowych samodzielnie, jeśli nie ma żadnych błędów, więc uzyskujesz tylko dane wyjściowe programu, który jest uruchamiany. Jeśli masz skrypt lub inny program, który opakowuje dotnet run i analizuje dane wyjściowe, ostrzeżenie będzie nieoczekiwanym tekstem i może spowodować awarię.

Dotyczy interfejsów API

Nie dotyczy

Zobacz też