Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
.NET SDK 8.0.200 hat eine Regression in den neuen -getItem, -getPropertyund -getTargetResult MSBuild CLI-Optionen eingeführt. Wenn das SDK zum Ausführen eines MSBuild-Vorgangs für ein bestimmtes TargetFramework verwendet wird, wird die Ausgabe wie folgt dupliziert:
> dotnet build -r:android-arm64 --getProperty:OutputPath -f:net8.0-android
bin\Debug/net8.0-android/android-arm64/
bin\Debug/net8.0-android/android-arm64/
Hinweis
Wir beabsichtigen, dieses Verhalten in einer bevorstehenden Version des .NET 8.0.200 SDK zu beheben.
Eingeführte Version
.NET 8.0.200
Vorheriges Verhalten
> dotnet build -r:android-arm64 --getProperty:OutputPath -f:net8.0-android
bin\Debug/net8.0-android/android-arm64/
Neues Verhalten
Das Erstellen, Laden oder Ausführen eines betroffenen Projekts schlägt fehl.
Art der einschneidenden Änderung
Dies ist eine Verhaltensänderung, die sich auf Benutzerskripts auswirken kann, insbesondere in CI/CD-Szenarien.
Grund für Änderung
Diese Optionen sollen Werte zurückgeben, die aus einem einzelnen vom Benutzer angeforderten Build berechnet werden. Vom SDK initiierte MSBuild-Vorgänge können buildpublish jedoch manchmal einen zweiten Aufruf von MSBuild auslösen– insbesondere, wenn die -f Option verwendet wird, um anzugeben, dass ein Build für ein bestimmtes TargetFramework erfolgen soll. In diesem Szenario wurden die -getItem, -getProperty und -getTargetResult Optionen für beide MSBuild-Aufrufe übergeben, anstatt nur für den, den ein Benutzer erwartet hatte.
Empfohlene Aktion
Wählen Sie eine der folgenden Aktionen aus:
- Verwenden Sie eine ältere Version des .NET SDK (bevor die Regression eingeführt wurde).
- Verwenden Sie eine Version des .NET 8 SDK, das den Fix enthält, der eine beliebige Version nach 8.0.202 sein sollte.
- Entfernen Sie jede Verwendung von
-fin Anrufen, die auch-getItem,-getPropertyoder-getTargetResultsverwenden.