笔记说明:
本想跟随着大佬的脚步学习
Swift
,被手把手教如何用Swift
仿写一个网易云音乐
的首页
。结果,一个pod install命令,就翻车了。
无可奈何,只好查资料解决问题。遂有此记录。
先说
解决的结论:
卸载
cocoapods
,重新安装比当前版本低
的cocoapods
。
环境交代:
Xcode 13.1、Cocoapods 1.11.2、macOS big sur
pod install 引发的错误
报错内容如下:
➜ MNUNetEaseMusic pod install
Analyzing dependencies
――― MARKDOWN TEMPLATE ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――
Command
/usr/local/bin/pod install
Report
What did you do?
What did you expect to happen?
What happened instead?
Stack
CocoaPods : 1.11.2 Ruby : ruby 2.6.3p62 (2019-04-16 revision 67580) [universal.x86_64-darwin20] RubyGems : 3.0.3 Host : macOS 11.6.1 (20G224) Xcode : 13.1 (13A1030d) Git : git version 2.30.1 (Apple Git-130) Ruby lib dir : /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib Repositories : 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
Podfile
platform :ios, '12.0' use_frameworks! target 'MNUNetEaseMusic' do pod 'Alamofire', '~> 5.2' pod 'SwiftyJSON', '~> 4.0' pod 'Moya', '~> 14.0' pod 'Kingfisher' pod 'SnapKit' end
Error
JSON::ParserError - 416: unexpected token at '"Sources/Placehold' /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/json/common.rb:156:in `parse' /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/json/common.rb:156:in `parse' /Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.11.2/lib/cocoapods-core/specification/json.rb:61:in `from_json' /Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.11.2/lib/cocoapods-core/specification.rb:748:in `from_string' /Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.11.2/lib/cocoapods-core/specification.rb:722:in `from_file' /Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.11.2/lib/cocoapods-core/source.rb:188:in `specification' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.2/lib/cocoapods/resolver/lazy_specification.rb:37:in `specification' /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/delegate.rb:348:in `block in delegating_block' /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/delegate.rb:349:in `block in delegating_block' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.2/lib/cocoapods/resolver.rb:178:in `dependencies_for' /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/delegates/specification_provider.rb:18:in `block in dependencies_for' /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/delegates/specification_provider.rb:77:in `with_no_such_dependency_error_handling' /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/delegates/specification_provider.rb:17:in `dependencies_for' /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:809:in `block in group_possibilities' /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:808:in `reverse_each' /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:808:in `group_possibilities' /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:779:in `possibilities_for_requirement' /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:761:in `push_state_for_requirements' /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:744:in `require_nested_dependencies_for' /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:727:in `activate_new_spec' /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:684:in `attempt_to_activate' /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:254:in `process_topmost_state' /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:182:in `resolve' /Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolver.rb:43:in `resolve' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.2/lib/cocoapods/resolver.rb:94:in `resolve' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.2/lib/cocoapods/installer/analyzer.rb:1078:in `block in resolve_dependencies' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.2/lib/cocoapods/user_interface.rb:64:in `section' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.2/lib/cocoapods/installer/analyzer.rb:1076:in `resolve_dependencies' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.2/lib/cocoapods/installer/analyzer.rb:124:in `analyze' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.2/lib/cocoapods/installer.rb:416:in `analyze' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.2/lib/cocoapods/installer.rb:241:in `block in resolve_dependencies' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.2/lib/cocoapods/user_interface.rb:64:in `section' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.2/lib/cocoapods/installer.rb:240:in `resolve_dependencies' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.2/lib/cocoapods/installer.rb:161:in `install!' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.2/lib/cocoapods/command/install.rb:52:in `run' /Library/Ruby/Gems/2.6.0/gems/claide-1.0.3/lib/claide/command.rb:334:in `run' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.2/lib/cocoapods/command.rb:52:in `run' /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.2/bin/pod:55:in `<top (required)>' /usr/local/bin/pod:23:in `load' /usr/local/bin/pod:23:in `<main>'
――― TEMPLATE END ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――
[!] Oh no, an error occurred.
Search for existing GitHub issues similar to yours: github.com/CocoaPods/C…
If none exists, create a ticket, with the template displayed above, on: github.com/CocoaPods/C…
Be sure to first read the contributing guide for details on how to properly submit a ticket: github.com/CocoaPods/C…
Don't forget to anonymize any private data!
Looking for related issues on cocoapods/cocoapods... Found no similar issues. To create a new issue, please visit: github.com/cocoapods/c…
➜ MNUNetEaseMusic
解决方式
卸载掉cocoapods(也有可能存在你有多个本地repo的情况,可以先用
pod repo list
命令查看一下)重新安装低于当前版本的cocoapods
具体操作如下:
➜ MNUNetEaseMusic sudo gem uninstall cocoapods
Password:
Remove executables:
pod, sandbox-pod
in addition to the gem? [Yn] y
Removing pod
Removing sandbox-pod
Successfully uninstalled cocoapods-1.11.2
➜ MNUNetEaseMusic rm -rf ~/.cocoapods/repos/trunk
➜ MNUNetEaseMusic cd ~/.cocoapods
➜ .cocoapods ls
repos
➜ .cocoapods cd ..
➜ ~ ls
AndroidStudioProjects Desktop Downloads Mine Music Postman Works
Applications Documents Library Movies Pictures Public
➜ ~ cd ~/.cocoapods
➜ .cocoapods cd ..
➜ ~ ls
AndroidStudioProjects Desktop Downloads Mine Music Postman Works
Applications Documents Library Movies Pictures Public
➜ ~ rm -rf ~/.cocoapods
➜ ~ cd ~/.config
➜ .config ls
clash configstore flutter iterm2 wireshark
➜ .config cd ..
➜ ~ sudo gem install cocoapods -v 1.11
Fetching cocoapods-core-1.11.0.gem
Fetching cocoapods-1.11.0.gem
Successfully installed cocoapods-core-1.11.0
Successfully installed cocoapods-1.11.0
Parsing documentation for cocoapods-core-1.11.0
Installing ri documentation for cocoapods-core-1.11.0
Parsing documentation for cocoapods-1.11.0
Installing ri documentation for cocoapods-1.11.0
Done installing documentation for cocoapods-core, cocoapods after 4 seconds
2 gems installed
➜ ~ pod --version
1.11.0
➜ ~ pod repo list
trunk
- Type: CDN
- URL: https://cdn.cocoapods.org/
- Path: /Users/xiuer/.cocoapods/repos/trunk
1 repo
➜ ~
再执行 pod install
完美解决问题