💭
Flutter Build時に Package.resolved file is corrupted or malformed
概要
GitHub Actionsを使用して、FlutterでBuildのCIを構築しようとしたところ、
Unable to get Xcode project information:
xcodebuild: error: Could not resolve package dependencies:
Package.resolved file is corrupted or malformed; fix or delete the file to continue: unsupported schema version 2
が出てきて、一生詰まっていた
原因
どうやらSwift5.6でSwift Package Managerのlockファイル的存在であるPackage.resolvedのスキーマがかなり変わったらしい。
そうした時に、XCodeのバージョンが13.4.1以上でないと、スキーマバージョンがversion 2に対応できないらしい
解決策
ワークフローの場合
修正前
runs-on: macos-latest
修正後
runs-on: macos-12
latestは現在mac OS 11.6とかみたいなので、その分XCodeのバージョンも古くなる。
そのため、mac OS 12以上のランナーを選択する。
ローカルの場合は、mac OSを上げる、ないしはXCodeのバージョンを上げつつ、Package.resolvedを削除することで対応できそう。
参考
Discussion