近期想要测试一段代码,使用Xcode16创建了一个demo工程,在初始化Podfile的时候发现报错。使用的是 pod init
错误信息如下:
RuntimeError - `PBXGroup` attempted to initialize an object with unknown ISA `PBXFileSystemSynchronizedRootGroup` from attributes: `{"isa"=>"PBXFileSystemSynchronizedRootGroup", "exceptions"=>["5D718EB02D01ED9C00394B05"], "path"=>"DemoApp", "sourceTree"=>"<group>"}`
If this ISA was generated by Xcode please file an issue: https://github.com/CocoaPods/Xcodeproj/issues/new
在 CocoaPods 的仓库找到一个一样的错误issue, 按照上面的步骤顺利的解决了,这里记录一下解决的过程。
首先将项目目录转换为Group
对比了一下修改前后的 project.pbxproj
内容,发现报错的主要原因是 PBXFileSystemSynchronizedRootGroup
这个 Xcodeproj 无法识别。
修改完成后,再次执行 pod init
还是报错。
[!] [!] Xcodeproj doesn't know about the following attributes {"minimizedProjectReferenceProxies"=>"1", "preferredProjectObjectVersion"=>"77"} for the 'PBXProject' isa.
If this attribute was generated by Xcode please file an issue: https://github.com/CocoaPods/Xcodeproj/issues/new
....
`initialize_from_file': [Xcodeproj] Unknown object version (77). (RuntimeError)
解决办法:
(1)删除下面两行
minimizedProjectReferenceProxies = 1;
preferredProjectObjectVersion = 77;
(2)修改 Xcode 的兼容版本
将 objectVersion = 77; 改为 objectVersion = 56;
关于这个版本的说明可以参考:設定 Xcode 的專案相容版本 (Project-Format)