今天清理下電腦,發現自己電腦上的cocoapods經常出現的一個問題就是一些經常用的第三方庫cocoapods搜不到,比如SDWebImage,然后就鼓搗了一下
$pos list 命令發現M 以后的庫查詢不到了,發現 $pod search 和 $pod list 查找的都是本地的第三方類庫,并不是服務器的類庫,于是原因肯定就出在本地和遠程不同步的問題。
最后在網上找了寫資料也有解決的辦法使用 pod repo update master 命令同步遠程服務器的第三方類庫, 發現有可能是網絡問題,有可能是遠程服務器就是github,然后類庫列表不全。然后想到了另外的辦法,有大神在gitcafe和oschina上建立了CocoaPods索引庫的鏡像。因為gitcafe和oschina都是國內的服務器,所以在執行索引更新操作時,會快很多。
?//下面的切換命令本人沒有切換成功一直報這個錯誤
?[!] To setup the master specs repo, please run `pod setup`.? ??
$pod repo remove master?
?$pod repo add master https://gitcafe.com/akuandev/Specs.git (2016.5.31日網站已關閉)?
?$?pod repo update? 或者可用http://git.oschina.net/akuandev/Specs.git 即可使用oschina上的鏡像。然而我是卸載了重新裝了一遍,裝了一個高版本的一.
1.在裝之前最好先卸載點老版本$ sudo gem uninstall cocoapods
2.查看本地安裝過的cocopods相關東西
$ gem list --local | grep cocoapods
顯示如下:
cocoapods (1.0.1)
cocoapods-core (1.0.1)
cocoapods-deintegrate (1.0.1)
cocoapods-downloader (1.1.1)
cocoapods-plugins (1.0.0)
cocoapods-search (1.0.0)
cocoapods-stats (1.0.0)
cocoapods-trunk (1.0.0)
cocoapods-try (1.1.0)
然后使用命令逐個刪除
$ sudo gem uninstall cocoapods-core
$ sudo gem uninstall cocoapods-deintegrate
....
刪除完之后接下來安裝RVM
RVM 是干什么的這里就不解釋了,后面你將會慢慢搞明白。
$ curl -L https://get.rvm.io | bash -s stable然后,載入 RVM 環境
$ source ~/.rvm/scripts/rvm檢查一下是否安裝正確
$ rvm -vrvm 1.27.0 (latest) by Wayne E. Seguin, Michal Papis[https://rvm.io/]
用RVM安裝Ruby環境
可以先查詢已經安裝的ruby
$ rvm list
卸載一個已安裝版本
$ rvm remove 1.9.2
列出已知的ruby版本
$ rvm list known
可以選擇現有的rvm版本來進行安裝(下面以rvm 2.3.0版本的安裝為例)
$ rvm install 2.3.0
這里需要等上一段時間
二.
設置Ruby版本
RVM 裝好以后,需要執行下面的命令將指定版本的 Ruby 設置為系統默認版本
$ rvm 2.3.0 --default
同樣,也可以用其他版本號,前提是你有用 rvm install 安裝過那個版本
這個時候你可以測試是否正確
$ ruby -v
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin15]
三
安裝 coocapods 其實也需要FQ的,這里不多說了,直接切換到淘寶鏡像服務器
查詢:
$ gem sources -l
可以查看當前是什么連接,然后替換方式如下:
$ gem source -r https://rubygems.org/
$ gem sources --add https://gems.ruby-china.org
要想驗證是否替換成功了,可以執行:
$ gem sources -l
成功顯示
*** CURRENT SOURCES ***
https://gems.ruby-china.org/
四
這里開始安裝 cocoapods
$ sudo gem install cocoapods? 差不多過個幾十秒吧
會提示:gems installed
這個時候可能會出現以下錯誤:
While executing gem ... (Gem::RemoteFetcher::FetchError)? ? bad response Forbidden 403 (https://gem
解決辦法:
執行命令
sudo gem install fir-cli --no-ri --no-rdoc
不料,竟然返回錯誤信息
ERROR:? While executing gem ... (Gem::RemoteFetcher::FetchError)
Errno::ECONNRESET: Connection reset by peer - SSL_connect (https://api.rubygems.org/quick/Marshal.4.8/fir-cli-1.1.5.gemspec.rz)
網上搜了下,找到了解決方案,執行命令
sudo gem sources -r https://rubygems.org/
gem sources -a https://ruby.taobao.org/
看下ruby源
gem sources -l
顯示如下
*** CURRENT SOURCES ***
https://ruby.taobao.org/
然后再次執行命令
sudo gem install fir-cli --no-ri --no-rdoc
顯示
Fetching: rubyzip-1.1.7.gem (100%)
Successfully installed rubyzip-1.1.7
Fetching: ruby_android-0.7.7.gem (100%)
Successfully installed ruby_android-0.7.7
Fetching: unf_ext-0.0.7.1.gem (100%)
Building native extensions.? This could take a while...
Successfully installed unf_ext-0.0.7.1
Fetching: unf-0.1.4.gem (100%)
Successfully installed unf-0.1.4
Fetching: domain_name-0.5.24.gem (100%)
Successfully installed domain_name-0.5.24
Fetching: http-cookie-1.0.2.gem (100%)
Successfully installed http-cookie-1.0.2
Fetching: rest-client-1.8.0.gem (100%)
Successfully installed rest-client-1.8.0
Fetching: CFPropertyList-2.3.1.gem (100%)
Successfully installed CFPropertyList-2.3.1
Fetching: fir-cli-1.1.5.gem (100%)
______________? ? ? ? ________? ? ____
/ ____/? _/ __ \? ? ? / ____/ /? /? _/
/ /_? / // /_/ /_____/ /? / /? ? / /
/ __/ _/ // _, _/_____/ /___/ /____/ /
/_/? /___/_/ |_|? ? ? \____/_____/___/
## 更新記錄
### FIR-CLI 1.1.5
- 完全兼容新版 API ?
- 請使用新版 API Token
- 新版 API Token 查看地址: `http://fir.im/user/info`
- 增加 `fir me` 指令查看當前登錄用戶
- 增加團隊成員直接上傳 app
- https://github.com/FIRHQ/fir-cli
Successfully installed fir-cli-1.1.5
9 gems installed
好了,到這安裝成功了,現在開始體驗下fir-cli
然后執行下一步:
$ pod setup
Terminal會停留在 Setting up CocoaPods master repo 這個狀態一段時間,是因為要進行下載安裝,而且目錄比較大,需要耐心等待一下
看到最后一條
五 coocapods 的使用,
使用 xcode 創建一個項目 然后cd 進入文件夾
執行命令 touch Podfile? 創建 podfile 文件
打開 podfile文件 open -e Podfile ,或者拖動文件直接使用 xcode打開
在文件中輸入
platform :ios, '8.1'
//這里不寫版本號,默認是下載最新的
pod 'AFNetworking'
注意:新版本要加上下面兩句話
target "項目的名稱" do
end
注意:'項目名稱'是你項目文件中'xx.xcodeproj'文件,'xx.xcodeproj'去掉后綴名所得的‘xx’==(就是)‘你的項目名稱’
如果不加會報以下錯誤
[!] The dependency `AFNetworking (~> 3.0)` is not used in any concrete target.
最后執行命令:
pod install
完成.
如后面需添加新的庫 使用 pod search SDWebImage
搜索你需要找的庫
然后 pod update 更新就好了