美文网首页IOS开发iOS学习笔记OSiOS学习
如何使用CocoaPods 更新Ruby源为Ruby China

如何使用CocoaPods 更新Ruby源为Ruby China

作者: 遥遥领先M | 来源:发表于2015-01-01 16:27 被阅读8335次
更新升级10.11 cocoapods安装出问题最简单的解决方法

这是因为10.11把cocoapods直接干掉了

sudo gem install -n /usr/local/bin cocoapods
再加一句,完美解决
sudo xcode-select --switch /Applications/Xcode.app 

使用CocoaPods做依赖管理,使我们的工程更加自动化的、集中的、简单直观的管理第三方开源库。你不用下载开源库的源代码引入工程,不用向工程中添加Framework,不用解决开源库和开源库以及开源库和工程之间的依赖、重复问题,也不用管开源库更新等一系列问题。有了CocoaPods,你只管任性,CocoaPods会为你做好一切。

更新Ruby

你需要会简单的使用命令行工具
CocoaPods唯一的限制就是在Ruby下运行,现在OS X都预装了Ruby,所以你只需要更新RubyGems到最新版本。
打开终端(control + space 真的很好用),然后输入如下的命令:

sudo gem update --system

会要你输入密码:
注意在终端中密码不显示字符,只要输完后按回车即可
用Ruby China替换Ruby的默认源,替换命令如下:

gem sources --remove https://rubygems.org/
//等有反应之后再敲入以下命令
gem sources -a https://gems.ruby-china.org/
//验证是否替换成功可以执行
gem sources -l
如图所示则证明替换成功

安装CocoaPods

在终端中输入如下命令:

sudo gem install cocoapods

安装过程是这样的:


安装完成如上图所示

在终端中输入如下命令来完成安装:

//将 CocoaPods Specs repository复制到你电脑上~/.cocoapods目录下
pod setup

它需要一点时间来完成,你等就是了
如果安装失败 ~/.cocoapods 里面是空的,就需要重新setup
命令如下:

pod repo remove master  
pod setup 

完毕之后这个文件夹大概有 100多M,需要花费比较多时间,请耐心等待。
到这里你已经成功安装了CocoaPods!

创建配置Podfile

Xcode新建一个HelloWorld工程
打开终端,进入HelloWord工程目录下:

//工程的路径也可以直接拖进来     
cd /Users/lifupeng/Desktop/HelloWorld 

在HelloWorld工程下创建一个默认的Podfile
执行命令:

pod init

用Xcode打开Podfile命令:

open -a Xcode Podfile

Podfile是这样的:

Xcode打开Podfile

修改类库支持的最低iOS版本

将# platform:ios, "6.0"修改成 #platform :ios, "7.0"
告诉CocoaPods你的工程是运行在iOS7下

为了让CocoaPods的引入不显示警告,在Podfile最上方加上:

inhibit_all_warnings!
// 也可以单独设置打开编译警告就好了
pod 'Alamofire', '~> 3.0.0-beta.3', :inhibit_warnings => true

最后Podfile配置是这样的:


Podfile配置

搜索第三方开源库

以搜索AFNetworking为例,搜索命令如下:

pod search AFNetworking

搜索结果如下:


pod search AFNetworking结果

把下面内容:

pod 'AFNetworking', '~> 2.5.0'

添加到Podfile中

target 'HelloWorld' do

pod 'AFNetworking', '~> 2.5.0'

end

然后保存关闭

安装开源库到你的工程中。

在终端中输入下面命令:(确保在终端的路径在项目目录下):

pod install
至此 你已经成功的把AFNetworking添加到工程中了
[!] From now on use `ShowTracker.xcworkspace`

正如上面的警告提醒,从现在开始,你必须使用HelloWorld.xcworkspace来打开该项目。

为了让CocoaPods的引入不显示警告,在Podfile最上方加上:

inhibit_all_warnings!

重新运行pod install,编译项目,此时你应该看到警告已经不显示了。

PS: 对Podfile修改安装之后编译项目,可能会出现如下警告 :

   The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.

此时,正确的做法是:

1.Project Cleanup
2.Remove all libPods*.a in  Linked Frameworks and Libraries
3.Update CocoaPods using the command  pod install

测试:
添加 #import <AFNetworking.h>头文件
从此引用第三方库如此简单,希望各位用的爽

CocoaPods常用命令

1、pod install

根据Podfile文件指定的内容,安装依赖库,如果有Podfile.lock文件而且对应的Podfile文件未被修改,则会根据Podfile.lock文件指定的版本安装。
每次更新了Podfile文件时,都需要重新执行该命令,以便重新安装Pods依赖库。

2、pod update

若果Podfile中指定的依赖库版本不是写死的,当对应的依赖库有了更新,无论有没有Podfile.lock文件都会去获取Podfile文件描述的允许获取到的最新依赖库版本。

3、pod search

命令格式为:

$ pod search AFNetworking  AFNetworking为参数

4、查看版本

pod --version

5、卸载 cocoapods

sudo gem uninstall cocoapods

今天比较闲,就把CocoaPods升级到0.36.0正式版(以前写Swift的时候用的预览版)。然后就郁闷了,不管安装什么第三方都会出现类似于:
[!] Unable to satisfy the following requirements: - `AFNetworking (~> 2.5.1)

 一通的搜索后找到原因,因为GFW的缘故。解决方法:
pod repo remove master
pod repo add master https://gitcafe.com/akuandev/Specs.git
pod repo update

相关文章

网友评论

  • 36a6f9ef0696:[!] Attempt to read non existent folder `/Users/

    install 后 报这样的错 怎么回事呢?
  • JackLiao:写的不错,谢谢分享!
  • ldldlkdldld:淘宝源现在已经采用https协议了,因此添加源时需要更正为

    gem sources -a https://ruby.taobao.org/
  • 刘大本事:题主我爱你!!!!!几天前我在安装jekyll和其他软件时候,死活安装不上,然后用了你的第一条命令久成功了,然后记了下来解决了好多软件的安装问题。然后今天我又倒腾时候又遇到这个问题,然后就找你这篇日志, 找了两三小时才找到!我知道我现在是幸福的,感谢博主!

本文标题:如何使用CocoaPods 更新Ruby源为Ruby China

本文链接:https://www.haomeiwen.com/subject/rtyztttx.html