.NET MAUI: Workload-Version und Xcode festlegen

Aus maxTechCorner

Auf einen Blick

Gilt für.NET MAUI 9/10, .NET SDK ab 8.0.400 (Workload Sets), Xcode 26/27 auf macOS
BereichSoftwareentwicklung
Dauer15–60 Minuten (inkl. Xcode-Download)
RechteAdministrator auf Windows-PC und Mac
StandOktober 2026

Workload-Version und Xcode festlegen ist bei .NET MAUI die moderne Form des „Downgrades“: Bringt ein Update der Entwicklungsumgebung Fehler mit oder verlangt eine neuere Xcode-Version, als auf dem Mac installiert ist, schreiben Sie per global.json eine bekannte, funktionierende Kombination aus .NET SDK und Workload-Set fest – für alle Entwickler und den Build-Server gleich. Das manuelle Löschen von Frameworks wie zu Xamarin-Zeiten entfällt.

Workload-Set und Xcode-Version gehören zusammen: per global.json festschreiben, passende Workloads installieren und Xcode mit xcode-select auswählen.

Problem

  • Nach einem Update von Visual Studio oder des .NET SDK bricht der iOS-Build ab mit: „This version of .NET for iOS (…) requires Xcode 27.0. The current version of Xcode is 26.6.“
  • Eine neue MAUI-Version enthält einen Fehler, der die App unbrauchbar macht.
  • Entwickler und Build-Server bauen mit unterschiedlichen Workload-Versionen und erhalten unterschiedliche Ergebnisse.

Ursache

Jede Version der .NET-Workloads für iOS, Mac Catalyst und macOS ist an eine bestimmte Xcode-Version gebunden. Visual Studio und dotnet workload update aktualisieren die Workloads automatisch auf das neueste Workload Set – Xcode auf dem Mac bleibt dabei unverändert.

Lösung

Schritt 1: Installierte Versionen ermitteln

dotnet --version
dotnet workload --version        # aktuelles Workload-Set, z. B. 10.0.401.1
dotnet workload list
xcodebuild -version              # auf dem Mac

Schritt 2: Workload-Set festschreiben

Im Stammverzeichnis der Projektmappe eine global.json anlegen bzw. ergänzen:

{
  "sdk": {
    "version": "10.0.401",
    "workloadVersion": "10.0.401",
    "rollForward": "disable"
  }
}

Die passende Kombination aus Workload-Set und Xcode steht in den Release Notes von .NET for iOS bzw. .NET MAUI.

Dann die Workloads in genau dieser Version installieren:

dotnet workload install maui --version 10.0.401

Auf dem Mac mit sudo ausführen. Bei Pair to Mac überträgt Visual Studio die passenden Komponenten automatisch.

Schritt 3: Passende Xcode-Version auswählen

Mehrere Xcode-Versionen können parallel installiert sein (z. B. /Applications/Xcode_26.6.app und /Applications/Xcode.app). Ältere Versionen gibt es im Apple-Developer-Portal unter More Downloads.

sudo xcode-select -s /Applications/Xcode_26.6.app
xcodebuild -version

Bei Pair to Mac verwendet Visual Studio die mit xcode-select ausgewählte Version; nach dem Umschalten die Verbindung zum Mac neu herstellen.

Schritt 4: Aufräumen und neu bauen

rm -rf bin obj
dotnet build -f net10.0-ios

Hinweise

  • Nur vorübergehend: Apple akzeptiert im App Store nur Builds mit aktuellen Xcode-Versionen. Ein festgeschriebenes älteres Set überbrückt Probleme, ersetzt aber nicht das Update.
  • Wieder aktualisieren: Eintrag workloadVersion entfernen bzw. erhöhen und dotnet workload update ausführen.
  • CI/CD: Auf Build-Agents die global.json mit einchecken und die gewünschte Xcode-Version im Pipeline-Skript auswählen.
  • Xamarin-Altprojekte: Für Xamarin gibt es keine neuen Versionen mehr; Downgrades lösen dort keine Store-Probleme. Siehe Von Xamarin zu .NET MAUI migrieren.
  • Bei Build-Pipelines und App-Veröffentlichung unterstützt Sie die individuelle Softwareentwicklung von m.a.x. it.

Siehe auch

Links und Quellen


Über m.a.x. it Die m.a.x. Informationstechnologie AG ist seit über 30 Jahren IT-Partner mittelständischer und großer Unternehmen in München und bietet maßgeschneiderte Lösungen und Services in den Bereichen Cloud, Cybersecurity, Netzwerk, Windows, Linux und Softwareentwicklung. Sie haben eine Frage zu diesem Artikel oder brauchen Unterstützung? Kontakt aufnehmen