如何为特定Pod指定源?解决TwilioChatClient多规格警告问题
解决CocoaPods多Spec警告:为单个Pod指定源
你猜的没错——同时添加两个源确实是导致这些警告的核心原因,CocoaPods在两个源里都找到了相同版本的TwilioChatClient规格文件(spec),没法确定优先选用哪一个,所以抛出了这些提示。好消息是,完全可以为每个Pod单独指定对应的源,这样就能彻底消除这些烦人的警告了。
修改你的Podfile
把原来全局声明的source配置去掉,换成给每个Pod单独绑定源的写法,具体修改后的代码如下:
project 'Proj/Proj.xcodeproj' platform :ios, '10.0' use_frameworks! target 'Proj' do # 为TwilioClient指定CocoaPods官方源 pod 'TwilioClient', '~>1.2', :source => 'https://github.com/CocoaPods/Specs' # 为TwilioChatClient指定Twilio专属源 pod 'TwilioChatClient', '1.0.4', :source => 'https://github.com/twilio/cocoapod-specs' target 'MobileMedTests' do inherit! :search_paths end post_install do |installer| installer.pods_project.targets.each do |target| target.build_configurations.each do |config| config.build_settings['SWIFT_VERSION'] = '4.0' end end end end target 'ProjUITests' do end
为什么这样修改能解决问题?
通过给每个Pod添加:source参数,你明确告诉了CocoaPods应该从哪个源去查找对应的规格文件,它就不会再在多个源里重复检索相同的包信息,自然也就不会抛出多spec的警告了。
修改完成后,你可以执行pod install --clean-install命令重新安装依赖,确保所有源的引用都被正确更新。
内容的提问来源于stack exchange,提问作者Glenn Posadas
相关产品推荐
相关产品推荐

