公司IOS 项目中,大神们用POD 做第三方依赖包管理,新开发功能,提交App Store 审核,说包含私有API ,查来查去,是一个第三方依赖包的问题,去掉就好,但是我的电脑上从来没有什么pod,这是要哭了%>_<%,以为很简单,结果踩了一天的坑!!!简单做个记录
mac 自带ruby ,可以直接用
# Xcode 7 + 8
$ sudo gem install cocoapods --pre
# Xcode 7
sudo gem install activesupport -v 4.2.6
但是国内的的ruby 非常慢,而且常常弄不下来,姐姐被这个安装弄了一上午,但是好在大神们早已找到了解决方案
首先 gem sources // 检查屏幕是否是下面👇,表示用的是国外的镜像,这个貌似被我大天朝和谐了,开小飞机都不行( ˇˍˇ )
*** CURRENT SOURCES ***
https://rubygems.org
然后敲:
gem sources --remove https://rubygems.org/
gem sources -a https://ruby.taobao.org/
通过 gem sources 查看是不是新的https://ruby.taobao.org/
然后直接执行安装
$ sudo gem install cocoapods --pre (macOS 最好是这个)
安装好后,使用pod 可以参照官网
注意最新的格式要用; 一定要有target ,否则会报错,真是够了😅
platform :ios, '8.0'
##use_frameworks!
target 'MyApp' do
pod 'AFNetworking', '~> 2.6'
pod 'ORStackView', '~> 3.0'
pod 'SwiftyJSON', '~> 2.3'
end
由于我的项目是以前大神就写好的,所以,我不用再去重建profile ,我只要cd 到项目根目录下,执行 pod update 就行了 ---(但是这里踩坑了个大坑)
pod update 第一步好像就是去repo master,由于我大天朝网络的原因,这个请求弄了好久
最后竟然报错了
[!] Unable to add a source with url https://github.com/CocoaPods/Specs.git named master.You can try adding it manually in~/.cocoapods/repos or via pod repo add.
WTF
不过不用担心,这个可以几种方案
1、更换master 源
pod repo remove master
//coding 上有每日更新的,建议使用这个pod repo add master https://git.coding.net/CocoaPods/Specs.git
//或者用oschina,但是https 好像有问题,一直是403,所以用ssh的方式,这里需要到官网去配置ssh keypod repo add master https://git.oschina.net/akuandev/Specs.git
2、手动
cd ~/.cocoapods/repo
git clone https://git.coding.net/CocoaPods/Specs.git master
完成后执行 pod setup
接下来,我以为我可以开心执行pod update 了,but I am totally wrong!!!!!
又踩坑了,why ,非常慢,第一次 WTF!! again !!
所以建议不要直接 pod install ,用下面两个带参数的,速度会有极大提升
pod install--verbose --no-repo-update
或者
pod update--verbose --no-repo-update
至此,我的pod 终于看似运行起来,以为结束了,But 又给提示了,xcode 打开也有问题
提示
[!] target overrides the `HEADER_SEARCH_PATHS` build setting defined in `Pods/Target Support Files/Pods-TZS/Pods-TZS.release.xcconfig'. This can lead to problems with the CocoaPods installation
WTF!!!!至此已经泪奔~~o(>_<)o ~~心累啊
怎么办?
不要慌,百度一下很简单,到项目根目录下,右击 XXX.xcodeproj -->显示包内容--> 打开project.pbxproj-->搜索所有的 “HEADER_SEARCH_PATHS” 然后把它们都干掉,对,就是这么简单粗暴,全部干掉!然后重新 pod update--verbose --no-repo-update
O(∩_∩)O 终于 不报错了,Xcode 打开项目 终于编译通过,一切恢复正常了
可是,真心累啊!!
ps: 在pod 很多过程中,会初选暂停,假死的样子,这时候,不是死了,是在请求网络,只是很慢,如何查看进度?两种方式
1、打开活动监视器,查看网络请求
2、cd 到 ~/.cocoapods/repo 目录下,执行du -sh * 就可以查看进度了