iOS - CocoaPods安裝 (Homebrew安裝)、使用


注意網絡一定要好,不然安裝會失敗。好多人都是死在網速上。實在不行就用手機4g分享網絡.

CocoaPods官網
Homebrew官網

一、全新安裝前,先檢查是否有安裝殘留(刪除CocoaPods)

  1. 如果之前裝過cocopods,最好先卸載掉,卸載命令:
sudo gem uninstall cocoapods
  1. 先查看本地安裝過的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(無需翻牆)

  1. 安裝安裝 Homebrew
    按照官網的說明,直接復制命令到終端中回車即可
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

出現Installation successful! 提示安裝成功!

  1. 接着安裝ruby,繼續在終端中進行
brew install ruby 

安裝完成后替換一下ruby源

  • 查看ruby源 gem sources -l
*** CURRENT SOURCES ***
https://rubygems.org/
  • 替換ruby源
gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/
  • 查看是否替換成功
gem sources -l

如果出現的是https://gems.ruby-china.com/證明替換成功。

  1. 安裝CocoaPods

執行下面一句

sudo gem install -n /usr/local/bin cocoapods

然后

pod setup

最后等待安裝完成就好了!期間如果遇到問題請大家自行百度。

三、Podfile 講解

# 下面兩行是指明依賴庫的來源地址
source 'https://github.com/CocoaPods/Specs.git'
source 'https://github.com/Artsy/Specs.git'

# 說明平台是ios,版本是9.0
platform :ios, '9.0'

# 忽略引入庫的所有警告(強迫症者的福音啊)
inhibit_all_warnings!

# 針對MyApp target引入AFNetworking
# 針對MyAppTests target引入OCMock,
target 'MyApp' do 
    pod 'AFNetworking', '~> 3.0' 
    target 'MyAppTests' do
       inherit! :search_paths 
       pod 'OCMock', '~> 2.0.1' 
    end
end
# 這個是cocoapods的一些配置,官網並沒有太詳細的說明,一般采取默認就好了,也就是不寫.
post_install do |installer|       
   installer.pods_project.targets.each do |target| 
     puts target.name 
   end
end

詳細看這里: 你真的會寫Podfile嗎?

四、使用中遇到的問題

    1. 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文件

  1. 如果Pods已經提交過或緩存過請執行以下步驟(沒有就忽略此步)驟:
cd 到項目目錄

git rm -r  --cached .

git add .

git commit -m "忽略Pods"
  1. 在GitHub上創建項目時選擇對應的語言會生成.gitignore文件,默認是隱藏的,打開此文件.
    找到Pods/   默認是注釋掉的, 去掉前面的#即可, 這樣在pod框架下得文件就不會再納入管理.   在其他開發人員使用時,  克隆代碼后只需要做一下 pod install即可.(注意:pod  update 是不可以的)

在此使用pod install而不是pod update原因如下:

pod install執行時如果有Podfile.lock文件,則三方庫會根據lock文件記錄的版本更新為最新版本

pod update 不管是否有Podfile.lock文件,都會將在(Podfile中引入時未寫版本的第三方庫)更新為網絡上最新的版本,會造成庫找不到的問題


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM