Xcode 16 使用 pod 命令报错解决方案

一、问题现象:

有人会遇到 Xcode 升级到 16 后,新建应用然后使用 pod init 命令会报错如下:

报错日志(点击可以折叠收起)

(base) yu**n@ycBok-Pro TestXcode_3 % pod init

――― MARKDOWN TEMPLATE ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――

Command

/usr/local/opt/ruby/bin/pod init

Report

  • What did you do?

  • What did you expect to happen?

  • What happened instead?

Stack

   CocoaPods : 1.15.2
Ruby : ruby 3.3.5 (2024-09-03 revision ef084cc8f4) [x86_64-darwin23]
RubyGems : 3.5.22
Host : macOS 15.0 (24A335)
Xcode : 16.1 (16B40)
Git : git version 2.39.5 (Apple Git-154)
Ruby lib dir : /usr/local/Cellar/ruby/3.3.5/lib
Repositories : cocoapods - git - https://github.com/CocoaPods/Specs.git @ a598c7b4d3a3b873136ba827516f00e0cb25d6c7

gitee-q1com-glaspecmanager - git - https://gitee.com/q1com/glaspecmanager.git @ 91c88586f9963e2a9bedf99707b39e8577a06487

trunk - CDN - https://cdn.cocoapods.org/

Plugins

cocoapods-deintegrate : 1.0.5
cocoapods-plugins : 1.0.0
cocoapods-search : 1.0.1
cocoapods-trunk : 1.6.0
cocoapods-try : 1.2.0

Error


RuntimeError - `PBXGroup` attempted to initialize an object with unknown ISA `PBXFileSystemSynchronizedRootGroup` from attributes: `{"isa"=>"PBXFileSystemSynchronizedRootGroup", "exceptions"=>["0D071E742CE1E4C10001221F"], "path"=>"TestXcode_3", "sourceTree"=>"<group>"}`
If this ISA was generated by Xcode please file an issue: https://github.com/CocoaPods/Xcodeproj/issues/new
/usr/local/lib/ruby/gems/3.3.0/gems/xcodeproj-1.25.1/lib/xcodeproj/project/object.rb:359:in `rescue in object_with_uuid'
/usr/local/lib/ruby/gems/3.3.0/gems/xcodeproj-1.25.1/lib/xcodeproj/project/object.rb:349:in `object_with_uuid'
/usr/local/lib/ruby/gems/3.3.0/gems/xcodeproj-1.25.1/lib/xcodeproj/project/object.rb:300:in `block (2 levels) in configure_with_plist'
/usr/local/lib/ruby/gems/3.3.0/gems/xcodeproj-1.25.1/lib/xcodeproj/project/object.rb:299:in `each'
/usr/local/lib/ruby/gems/3.3.0/gems/xcodeproj-1.25.1/lib/xcodeproj/project/object.rb:299:in `block in configure_with_plist'
/usr/local/lib/ruby/gems/3.3.0/gems/xcodeproj-1.25.1/lib/xcodeproj/project/object.rb:296:in `each'
/usr/local/lib/ruby/gems/3.3.0/gems/xcodeproj-1.25.1/lib/xcodeproj/project/object.rb:296:in `configure_with_plist'
/usr/local/lib/ruby/gems/3.3.0/gems/xcodeproj-1.25.1/lib/xcodeproj/project.rb:272:in `new_from_plist'
/usr/local/lib/ruby/gems/3.3.0/gems/xcodeproj-1.25.1/lib/xcodeproj/project/object.rb:350:in `object_with_uuid'
/usr/local/lib/ruby/gems/3.3.0/gems/xcodeproj-1.25.1/lib/xcodeproj/project/object.rb:290:in `block in configure_with_plist'
/usr/local/lib/ruby/gems/3.3.0/gems/xcodeproj-1.25.1/lib/xcodeproj/project/object.rb:287:in `each'
/usr/local/lib/ruby/gems/3.3.0/gems/xcodeproj-1.25.1/lib/xcodeproj/project/object.rb:287:in `configure_with_plist'
/usr/local/lib/ruby/gems/3.3.0/gems/xcodeproj-1.25.1/lib/xcodeproj/project.rb:272:in `new_from_plist'
/usr/local/lib/ruby/gems/3.3.0/gems/xcodeproj-1.25.1/lib/xcodeproj/project.rb:213:in `initialize_from_file'
/usr/local/lib/ruby/gems/3.3.0/gems/xcodeproj-1.25.1/lib/xcodeproj/project.rb:113:in `open'
/usr/local/lib/ruby/gems/3.3.0/gems/cocoapods-1.15.2/lib/cocoapods/command/init.rb:41:in `validate!'
/usr/local/lib/ruby/gems/3.3.0/gems/claide-1.1.0/lib/claide/command.rb:333:in `run'
/usr/local/lib/ruby/gems/3.3.0/gems/cocoapods-1.15.2/lib/cocoapods/command.rb:52:in `run'
/usr/local/lib/ruby/gems/3.3.0/gems/cocoapods-1.15.2/bin/pod:55:in `<top (required)>'
/usr/local/opt/ruby/bin/pod:25:in `load'
/usr/local/opt/ruby/bin/pod:25:in `<main>'

――― TEMPLATE END ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――

[!] Oh no, an error occurred.

Search for existing GitHub issues similar to yours:
https://github.com/CocoaPods/CocoaPods/search?q=%60PBXGroup%60+attempted+to+initialize+an+object+with+unknown+ISA+%60PBXFileSystemSynchronizedRootGroup%60+from+attributes%3A+%60%7B%22isa%22%3D%3E%22PBXFileSystemSynchronizedRootGroup%22%2C+%22exceptions%22%3D%3E%5B%220D071E742CE1E4C10001221F%22%5D%2C+%22path%22%3D%3E%22TestXcode_3%22%2C+%22sourceTree%22%3D%3E%22%3Cgroup%3E%22%7D%60%0AIf+this+ISA+was+generated+by+Xcode+please+file+an+issue%3A+https%3A%2F%2Fgithub.com%2FCocoaPods%2FXcodeproj%2Fissues%2Fnew&type=Issues

If none exists, create a ticket, with the template displayed above, on:
https://github.com/CocoaPods/CocoaPods/issues/new

Be sure to first read the contributing guide for details on how to properly submit a ticket:
https://github.com/CocoaPods/CocoaPods/blob/master/CONTRIBUTING.md

Don’t forget to anonymize any private data!

Looking for related issues on cocoapods/cocoapods…
Searching for inspections failed: undefined method `map’ for nil

二、解决方案

以下是我的解决方案,你可以试试,反正解决了我的问题,我不敢保证 100% 能解决你的问题。🙏

这是我创建的一个示例空项目:

第一步:在 Xcode 中右键单击项目文件夹并转换为组

第二步:使用文本编辑器打开 YouProjectName.xcodeproj 文件操作:

1、回到项目根路径中,使用文本编辑器打开 YouProjectName.xcodeproj 文件后,找到 project.pbxproj 文件

2、修改 project.pbxproj 文件中以下内容:

objectVersion = 77;

改为:

objectVersion = 63;  

如果 63 不行,可以试试 56 ,我是改成 63是可以的

然后使用关键词 PBXFileSystemSynchronizedRootGroup 全文搜索,删除如图中的代码段:

然后保存修改,然后退出。

然后你可以执行 pod init 以及 pod install 测试下是否可以了。