一、全新安装前,先检查是否有安装残留(删除CocoaPods)
如果之前装过cocopods,最好先卸载掉,卸载命令:
sudo gem uninstall cocoapods
先查看本地安装过的cocopods相关东西,命令如下:
gem list --local | grep cocoapods
会显示如下:
cocoapods-core (0.39.0)
cocoapods-downloader (0.9.3)
cocoapods-plugins (0.4.2)
cocoapods-search (0.1.0)
cocoapods-stats (0.6.2)
cocoapods-trunk (0.6.4)
cocoapods-try (0.5.1)
然后逐个删除吧:
//示例sudo gem uninstall cocoapods-core
二、使用Homebrew安装CocoaPods(无需翻墙)
安装安装 Homebrew
特别提示官方的无法连接安装,可以使用下面的进行使用
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
出现Installation successful!提示安装成功!
接着安装ruby,继续在终端中进行
brew install ruby
安装完成后替换一下ruby源
查看ruby源gem sources -l
***CURRENT SOURCES***https://rubygems.org/
替换ruby源
gem sources--addhttps://gems.ruby-china.com/--removehttps://rubygems.org/
查看是否替换成功
gem sources -l
如果出现的是https://gems.ruby-china.com/证明替换成功。
安装CocoaPods
执行下面一句
sudo gem install -n /usr/local/bin cocoapods
然后
pod setup
注意:如果pod setup没反应说明没有clone成功master,可以用码云的https://gitee.com/mirrors/CocoaPods-Specs来clone,贼快
最后等待安装完成就好了!期间如果遇到问题请大家自行百度。
三、Podfile 讲解
# 下面两行是指明依赖库的来源地址source'https://github.com/CocoaPods/Specs.git'source'https://github.com/Artsy/Specs.git'# 说明平台是ios,版本是9.0platform:ios,'9.0'# 忽略引入库的所有警告(强迫症者的福音啊)inhibit_all_warnings!# 针对MyApp target引入AFNetworking# 针对MyAppTests target引入OCMock,target'MyApp'dopod'AFNetworking','~> 3.0'target'MyAppTests'doinherit!:search_pathspod'OCMock','~> 2.0.1'endend# 这个是cocoapods的一些配置,官网并没有太详细的说明,一般采取默认就好了,也就是不写.post_installdo|installer|installer.pods_project.targets.eachdo|target|puts target.nameendend
详细看这里:你真的会写Podfile吗?
四、使用中遇到的问题
Cocoapods更新不到最新的第三方库的问题
情况一:
打开终端,查看一下cocoapods的版本号:pod --version如果不是最新版本,升级一下cocoapods版本:sudo gem install -n /usr/local/bin cocoapods --pre但是有时候cocoapods升到最新版本后我cd到工程文件下pod install,发现还是没有更新最新的库。这时候需要更新本地Pod的索引文件:pod setup或pod repo update此时在pod install或pod update,A库应该就是最新的了。
情况二:
可能是别的库锁定了这个库的版本,也就是第三方库里用了第三方库并把它的版本给锁定了。
更详细看这里,都是杯具:
https://www.jianshu.com/p/a4c131491608
更新索引库或者指定第三方
pod update 第三方名字 例如:pod update AFNetworking
四、GIT提交时忽略Pods文件
如果Pods已经提交过或缓存过请执行以下步骤(没有就忽略此步)骤:
cd 到项目目录git rm -r --cached .git add .git commit -m "忽略Pods"
在GitHub上创建项目时选择对应的语言会生成.gitignore文件,默认是隐藏的,打开此文件.
找到Pods/ 默认是注释掉的, 去掉前面的#即可, 这样在pod框架下得文件就不会再纳入管理. 在其他开发人员使用时, 克隆代码后只需要做一下 pod install即可.(注意:pod update 是不可以的)
在此使用pod install而不是pod update原因如下:
pod install执行时如果有Podfile.lock文件,则三方库会根据lock文件记录的版本更新为最新版本
pod update 不管是否有Podfile.lock文件,都会将在(Podfile中引入时未写版本的第三方库)更新为网络上最新的版本,会造成库找不到的问题
作者:CoderLGL
链接:https://www.jianshu.com/p/f05c98469fbc
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。