• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

CocoaPods 加载问题 hostname "gems.ruby-china.org" does not match the s ...

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

一、简介

  • CocoaPods官网

  • 什么是CocoaPods?
CocoaPods是OS X和iOS下的一个第三方开源类库管理工具,通过CocoaPods工具我们可以为项目添加被称       为“Pods”的依赖库(这些类库必须是CocoaPods本身所支持的),并且可以轻松管理其版本。

CocoaPods项目的源码 在 Github 上管理。该项目开始于 2011 年 8 月 12 日,经过多年发展,现在已经成为 iOS 开发事实上的依赖管理标准工具。

  • CocoaPods出现的背景
开发 iOS 项目不可避免地要使用第三方开源库,在使用CocoaPods之前,开发项目需要用到第三方开源库的时候,我们需要

1、把开源库的源代码复制到项目中。

2、添加一些依赖框架和动态库。

3、设置-ObjC,-fno-objc-arc等参数。

4、管理他们的更新

在使用CocoaPods后,我们只需要把用到的开源库放到一个名为Podfile的文件中,然后执行pod install就可以了,Cocoapods就会自动将这些第三方开源库的源码下载下来,并且为我们的工程设置好响应的系统依赖和编译参数。

  • 使用CocoaPods的好处
1、在引入第三方库时它可以自动为我们完成各种各样的配置,包括配置编译阶段、连接器选项、甚至是ARC环境下的-fno-objc-arc配置等。

2、使用CocoaPods可以很方便地查找新的第三方库,这些类库是比较“标准的”,而不是网上随便找到的,这样可以让我们找到真正好用的类库。

  • CocoaPods的原理
  • CocoaPods的原理是将所有的依赖库都放到另一个名为Pods的项目中,然后让主项目依赖Pods项目,这样,源码管理工作都从主项目移到了Pods项目中。Pods项目最终会编译成一个名为libPods.a的文件,主项目只需要依赖这个.a文件即可。

二、安装

1、安装ruby环境

以下是安装ruby的方法:

1)、通过Ruby源代码安装

1>、从ruby官网上下载ruby源码, https://www.ruby-lang.org/en/downloads/ , 解压

2>、cd 到解压目录下,执行

$ ./configure



3>、执行

$ make



4>、 执行

$ make install


5>、 执行

$ buby -v

2)通过rvm升级Ruby(推荐)
1>、安装rvm
RVM:Ruby Version Manager, Ruby版本管理器,包括Ruby的版本管理和Gem库管理(gemset)

$ curl -L get.rvm.io | bash -s stable


2>、加载文件,测试是否安装正常(按照提示操作)
$ source ~/.bashrc

$ source ~/.bash_profile

$ source ~/.profile

$ rvm -v

3>、获取rvm列表

$ rvm list known



4>、安装ruby2.4

$ rvm install 2.4



安装过程中可能遇到如下错误:
Error running 'requirements_osx_port_libs_install curl-ca-bundle automake libtool libyaml libffi libksba',showing last 15 lines of /Users/acewill/.rvm/log/1468253599_ruby-2.3.0/package_install_curl-ca-bundle_automake_libtool_libyaml_libffi_libksba.log

原因是需要安装Homebrew, 参照stack overflow上的问题Installing RVM: “Requirements installation failed with status: 1.”
安装Homebrew, 通过以下命令:

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

安装完Homebrew,重新安装ruby

$ rvm install 2.4

2、设置ruby的软件源

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

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

$ gem sources -ahttps://gems.ruby-china.org/ #(设置当前ruby的源,淘宝镜像已经不能用了,可以用https://gems.ruby-china.org)

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

如果Terminal输出:

*** CURRENT SOURCES ***

表示切换成功

3、设置gem为最新版本
如果gem太老,可以尝试用如下命令升级gem:

$ gem update --system

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

如果出现 
ERROR:  While executing gem ... (OpenSSL::SSL::SSLError)
    hostname "upyun.gems.ruby-china.org" does not match the server certificate
原因是之前用的ruby镜像源是淘宝的,需要切换成https://gems.ruby-china.org/,在终端输入

$ gem sources —remove https://ruby.taobao.org/


4 、安装CocoaPods

第一种方法:git clone 方法安装cocoaPods

$ cd ~/.cocoapods/repos

克隆一个Specs库


完成后,执行open . 打开当前目录repos

$ open .

然后把Specs目录改名为master即可

如果gitclone还慢的话,直接上https://github.com/CocoaPods/Specs 点击下载,根据上面的目录结构图,放对了就好


然后再执行pod search 第三方框架

$ pod search AFNetworking

看到下面信息说明成功了.


按wq退出

如果出现 [!] Unable to find a pod with name, author, summary, or description matching `AFNetworking`
执行下面操作,删除索引

$ rm ~/Library/Caches/CocoaPods/search_index.json

然后重新执行

$ pod search AFNetworking

第二种方法:用gem命令安装(不推荐,比较慢,建议用第一种方法)
$ sudo gem install cocoa pods

备注:苹果系统升级 OS X EL Capitan 后改为:

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


$ pod setup


会输出Setting up CocoaPods master repo,但是会等待比较久的时间。这步其实是 Cocoapods 在将它的信息下载到 ~/.cocoapods目录下,如果你等太久,可以试着 cd 到那个目录,用du -sh *来查看下载进度。你也可以参考本文接下来的使用 cocoapods 的镜像索引一节的内容来提高下载速度。

三、使用

1、新建工程,并cd到工程目录


2、新建Podfile文件

$ vim Podfile


3、按i(英文输入状态下)进入编辑状态


4、输入相应的第三方和版本,比如



5、编辑好,先按esc,再输入:wq(英文输入状态下)保存退出


6、导入第三方库

$ pod install

成功后,会在目录下生成一个跟工程名一样但是后缀为.xcworkspace的文件和一个Pods文件夹



7、需要打开后缀为.xcworkspace的工程文件,以后编码也是在此文件中进行操作
工程目录结构如下



8、使用第三方库



执行以下操作





至此,在工程中用CocoaPods导入第三方库已成功完成,接下来就可以继续愉快地撸代码了。如果后期需要再添加其他第三方库或者更新当前第三方库,则重复步骤2-6即可!

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Ruby on rails3新手谈(1):Ruby on rails环境搭建发布时间:2022-07-14
下一篇:
ruby学习--string--1发布时间:2022-07-14
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap