CocoaPods依赖工具使用总结

一、升级ruby

RVM: Ruby Version Manager,Ruby版本管理器,包括Ruby的版本管理和Gem库管理(gemset)

 

(1)安装RVM: curl -L get.rvm.io | bash -s stable

 

(2)测试是否安装正常: rvm -v

等待一段时间后就可以成功安装好 RVM            

source ~/.bashrc   

source ~/.bash_profile 

 

(3)RVM升级Ruby:

(1)查看当前ruby版本: ruby -v    

(2)列出已知的ruby版本: rvm list known  

(3)安装ruby 2.2.4(本人安装这个版本): rvm install 2.2.4

终端运行结果:(如果直接成功请绕过homebrew的卸载安装)

 

(4)更换Ruby镜像:

(a)检查当前镜像: gem sources -l  

(b)移除当前镜像: gem sources --remove https://rubygems.org/ (具体看你上一步检查的结果)

(c)更换新的镜像: gem sources -a https://gems.ruby-china.org/ 

(d)检查新镜像是否安装成功: gem sources -l

 

注意:请检查是否安装过homebrew,未安装可能会导致opensll缺失,从而新源无法安装

安装ruby遇到" Installing Homebrew - Brew Command Not Found"命令找不到解决方案:

gcc --version

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

brew doctor

brew update.

完成后 执行: ruby -v

出现以下提示:ruby 2.2.4p95 (2015-04-13 revision 50295) [x86_64-darwin14]

 

安装出现It appears Homebrew is already installed.

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"

出现:and sudo mkdir worked这样ruby2.2.4就安装好了.

 

 

二、CocoaPods的安装:

CocoaPods是一个用Ruby写的、负责管理iOS项目中第三方开源库的工具,CocoaPods能让我们集中的、统一管理第三方开源库,为我们节省设置和更新第三方开源库的时间。

1.设置ruby的软件源:

gem sources -l #(查看当前ruby的源)

gem sources --remove https://rubygems.org/ #(移除当前ruby的源)

gem sources -a https://ruby.taobao.org/ #(设置将Ruby 的软件源替换成国内的)

gem sources -l #(再次查看当前ruby的源)

如果Terminal输出:

*** CURRENT SOURCES ***

https://ruby.taobao.org/

就证明ruby的软件源已经设置OK了。

2.设置gem为最新版本:

sudo gem update --system

 

升级成功后会提示: Latest version currently installed. Aborting.

 

3.执行安装CocoaPods命令:

(1)旧版系统指令: sudo gem install cocoapods

OS X EL Capitan升级后: sudo gem install -n /usr/local/bin cocoapods

 

(2)下载标准配置文件               pod setup

 

(3)检查下载进度,新开一个终端窗口,输入 cd ~/.cocoapods/ 命令,执行 du -sh * 查看文件夹大小

a.如果下载过程文件夹大小始终不变,则有可能需要删除master分支 sudo rm -fr ~/.cocoapods/repos/master 

b.如果pod setup过程中,使用普通网络下载速度慢,下载中途出错,建议使用联通4G开热点给mac电脑

c.353M,使用4G热点约两分钟可以下载完,安装需要2-3分钟,安装完成后900M

(4)安装成功后,会有绿色提示,检查是否搜索到第三方库  pod search AFNetworking

 

注意:pod setup在执行时,会输出Setting up CocoaPods master repo,但是会等待比较久的时间。这步其实是 Cocoapods 在将它的信息下载到 ~/.cocoapods目录下,如果你等太久,可以试着 cd 到那个目录,用du -sh *来查看下载进度。安装成功后,你会看到:Setup completed

 

三、CocoaPods的使用:

1、查找第三方库:pod search AFNetworking

2、创建Podfile文件

切换到工程目录:cd  /Users/apple/Documents/Project/WeChat

然后输入:touch Podfile

(就可以在项目目录里看到Podfile文件,注意Podfile文件需放到你的工程根目录下,不能写成别的名字,也可以自己在工程根目录里面直接新建,也可以使用:pod init)

3、打开Podfile文件:open -e Podfile

4、编辑 Podfile 文件:vim Podfile

5、新版Podfile编写格式:

platform :ios, '8.0'   #(注明你的开发平台以及版本,'8.0'忽略不写即为最新版本)

pod 'AFNetworking', '~> 2.5.3'    #('~> 2.5.3'为版本号,忽略不写即为最新版本)

pod 'SDWebImage', '~> 3.7.2'

pod install    #(就已经下载完成并且设置好了编译参数和依赖)

 

platform :ios, '8.0'

use_frameworks!

target '工程名' do

pod "AFNetworking","3.0.4"

end

 

6、删除已经配置的类库和移除CocoaPods

A、删除项目中已经配置的类库

1.在已经配好的CocoaPods打开Podfile文件

2.打开终端 cd 到当前项目目录下,重新执行pod install命令

如果Xcode已经装有CocoaPods插件直接点击Install Pods即可(建议先点击 “ Update Pods ”,然后" Install Pods ")

 

B、在项目中移除CocoaPods

1.删除工程文件夹下的PodfilePodfile.lockPods文件夹。

2.删除xcworkspace文件。

3.打开xcodeproj文件,删除项目中的Pods文件夹及Pods.xcconfig引用和libpods.a

4.打开Build Phases选项,删除Check Pods Manifest.lockCopy Pods Resources,以及Embeded Pods Frameworks

5.完成,编译运行,无错通过。

删除注意事项:

从项目中移除某个类库直接修改" Podfile "文件即可,但是移除整个CocoaPods就有点麻烦了,或许有其他方法。另外,如果在编辑工程时不小心删除了某个文件,如Podfile.lock,那么我们就要用上面的方法先移除整个CocoaPods,然后重新建立Podfile和使用pod install命令重装CocoaPods。

 

7、关于 Podfile.lock问题:

当你执行pod install之后,除了 Podfile 外,CocoaPods 还会生成一个名为Podfile.lock的文件,Podfile.lock 应该加入到版本控制里面,不应该把这个文件加入到.gitignore中。因为Podfile.lock会锁定当前各依赖库的版本,之后如果多次执行pod install 不会更改版本,要pod update才会改Podfile.lock了。这样多人协作的时候,可以防止第三方库升级时造成大家各自的第三方库版本不一致。

 

8、pod install与pod update区别:

1.使用pod install来安装新的库,即使你的工程里面已经有了Podfile,并且已经执行过pod install命令了;所以即使你是添加或移除库,都应该使用pod install。

2.使用pod update [PODNAME] 只有在你需要更新库到更新的版本时候用。

 

9、注意使用问题:

1.从此以后需要使用Cocoapods生成的 .xcworkspace文件来打开工程,而不是使用以前的.xcodeproj文件

2.每次更改了Podfile文件,都需要重新执行一次pod install或者pod update命令

3.无论是执行pod install还是pod update都卡在了Analyzing dependencies不动原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步,然后速度就会提升不少。加参数的命令如下:

pod install --verbose --no-repo-updatepod update --verbose --no-repo-update

 

 

原文地址:https://www.cnblogs.com/yuhao309/p/6781854.html