CocoaPods 安裝
cocoaPods 簡(jiǎn)介
每種語(yǔ)言發(fā)展到一個(gè)階段,就會(huì)出現(xiàn)相應(yīng)的依賴(lài)管理工具,例如Java語(yǔ)言的Maven, nodejs的npm.隨著iOS開(kāi)發(fā)者的增多,業(yè)界也出現(xiàn)了為iOS程序提供依賴(lài)管理的工具,名字叫做 CocoaPods。
CocoaPods項(xiàng)目的源碼在Github上管理,該項(xiàng)目開(kāi)始于2011年8月12日,經(jīng)過(guò)多年的發(fā)展,現(xiàn)在已經(jīng)成為iOS開(kāi)發(fā)實(shí)施上的依賴(lài)管理標(biāo)準(zhǔn)工具。開(kāi)發(fā)iOS項(xiàng)目不可避免的要使用第三方開(kāi)源庫(kù),CocoaPods的出現(xiàn)可以節(jié)省設(shè)置和更新第三方開(kāi)源庫(kù)的時(shí)間
在沒(méi)有使用 CocoaPods 以前,我需要:
把這些第三方開(kāi)源庫(kù) 的源代碼文件復(fù)制到項(xiàng)目中,或者設(shè)置成 git 的 submodule。 對(duì)于這些開(kāi)源庫(kù)通常需要依賴(lài)系統(tǒng)的一些 framework,我需要手工地將這些 framework 分別增加到項(xiàng)目依賴(lài)中,比如通常情況下,一個(gè)網(wǎng)絡(luò)庫(kù)就需要增加以下 framework: CFNetwork, SystemConfiguration, MobileCoreServices, CoreGraphics, zlib。 對(duì)于某些開(kāi)源庫(kù),我還需要設(shè)置-licucore或者 -fno-objc-arc等編譯參數(shù) 管理這些依賴(lài)包的更新。 這些體力活雖然簡(jiǎn)單,但毫無(wú)技術(shù)含量并且浪費(fèi)時(shí)間。在使用 CocoaPods 之后,我只需要將用到的第三方開(kāi)源庫(kù)放到一個(gè)名為 Podfile 的文件中,然后執(zhí)行pod install。 CocoaPods 就會(huì)自動(dòng)將這些第三方開(kāi)源庫(kù)的源碼下載下來(lái),并且為我的工程設(shè)置好相應(yīng)的系統(tǒng)依賴(lài)和編譯參數(shù)。
安裝
- 安裝方式一場(chǎng)簡(jiǎn)單,Mac下都自帶ruby,使用ruby的gem命令即可下載安裝
- sudo gem install cocoapods
- pod setup
-
gem -v//獲取gem版本信息,查看當(dāng)前版本是否為最新,否則下一步更新版本 -
gem update --system//可能需要管理員權(quán)限,sudo -
gem sources --remove https://rubygems.org///移除舊的ruby源 -
gem sources -a https://ruby.taobao.org///替換為淘寶的鏡像 -
gem sources -l//檢查是否修改成功 -
sudo gem install cocoapods//安裝cocoaPods,需要輸入密碼,為電腦的登錄密碼
安裝三方庫(kù)文件
pod setup將工程文件拖到終端里,獲取當(dāng)前工程路徑
touch Podfile//創(chuàng)建Podfile文件, touch命令-新建open Podfile//用Xcode打開(kāi) open-打開(kāi)命令在podfile文件中添加
pod search AFNetworking//搜索三方庫(kù)pod install --verbose --no-repo-update查看安裝進(jìn)度并且忽略沒(méi)用的安裝過(guò)程
刪除安裝的內(nèi)容
- 打開(kāi)Podfile文件,刪除JSONKit該行,即:
- platform:ios, '7.0'
- pod 'AFNetworking', '~> 2.1.0'
- pod 'JSONKit', '~> 1.5pre'(刪除該行)
- pod 'MBProgressHUD', '~> 0.8'
- (如果想換成1.1版本,將被刪除的行改成pod 'JSONKit-NoWarning', '~> 1.1'即可)
- cd到當(dāng)前項(xiàng)目目錄下,重新執(zhí)行pod install命令。輸出信息如下(留意Removing JSONKit):
- $ pod install
Analyzing dependencies
Removing JSONKit
Downloading dependencies
Using AFNetworking (2.1.0)
Using MBProgressHUD (0.8)
Generating Pods project
Integrating client project