CocoaPods是ruby实现的,需要用ruby进行安装,mac自带ruby,如果没有ruby的需要先安装ruby。
 
安装CocoaPods命令
安装CocoaPods命令:sudo gem install cocoapods
 
gem默认是从https://rubygems.org/的源进行下载的,下载较慢,可以切换到国内的源进行下载,下面是切换的方式:
gem sources --add https://ruby.taobao.org/ --remove https://rubygems.org/
切换完成后,通过【gem sources -l】查看所有的源
 
查看安装的CocoaPods的版本
pod --version
 
使用CocoaPods
进入xcode的工程目录,新建一个Podfile文件(每个工程都有一个Podfile)
使用的别人已经建好的工程,所以不需要自己去建立Podfile了
在Podfile的同级目录下输入以下命令,进行依赖包更新
pod setup 
pod setup更新本地电脑上Pods依赖库的tree,有新的Pods依赖库时可以pod search出来
 
pod update
pod update会通过Podfile去获取允许获取的最新版本的依赖库进行安装,并且会生成一个Podfile.lock文件
 
pod install
pod install如果有Podfile.lock文件,且Podfile未更新,会从Podfile.lock获取依赖库信息进行安装。如果没有Podfile.lock则会根据Podfile进行安装
 
备注:
在使用pod update和pod install时非常慢,通过这篇http://blog.csdn.net/ralbatr/article/details/39082937博客解决了慢的问题
(最近使用CocoaPods来添加第三方类库,无论是执行pod install还是pod update都卡在了Analyzing dependencies不动

原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步,然后速度就会提升不少。加参数的命令如下:

pod install --verbose --no-repo-update

pod update --verbose --no-repo-update)
 
 
安装中遇到的问题:
 
问题一:
在安装过程中提示“activesupport requires Ruby version >= 2.2.2.”,所以需要先升级ruby然后再去进行安装
(通过【ruby -v】可以查看ruby版本)
 
第一步:安装rvm
先安装rvm:rvm可以让我们拥有多个ruby,并在多个版本之间自由切换,mac自带的版本太低,我们可以装一个高版本的并存
curl -L get.rvm.io |bash -s stable
source ~/.rvm/scripts/rvm
rvm -v
 
第二步:通过rvm安装高版本ruby并切换默认版本
rvm list known  //列出ruby所有可安装的版本
 
 
然后选择一个可安装的版本进行安装
rvm install 2.2.4
安装成功后查看ruby版本,ruby -v。已经是最新的版本了
 
rvm use 2.2.4 —default   //这个是切换ruby的默认版本为2.2.4,搜索到资料上是这么写的,但是在使用这个命令之前ruby版本也是2.2.4.如果要切换回低版本再用吧
 
(ruby版本低问题解决,直接重新使用sudo gem install cocoapods安装即可)
 
 
安装过程中我没有遇到gem版本过低问题,如果提示gem版本过低,sudo gem update —system来解决(system前两个-)
 
问题二:
podfile中的下载地址是从自己建的git上下载,一直下载不下来
 
解决方法:
需要申请对应git仓库的权限,将本机生成的ssh公钥配置到git的密钥管理里
 
问题三:
pod update和pod install的时候提示The dependesy ‘xxx’is not used in any concrete target.
网上搜到的方法是在Podfile中增加target xxx to   最后加end(但是我有多个target。填上后还是各种报错)
最后咨询了开发,说是因为我的pod版本太高了,需要降级,如果不降级可以通过修改Podfile文件实现,但是就算pod下来了打包时也会失败
 
解决方案:
对cocoapods进行降级
 
具体方法参考下面的文章:

安装和使用iOS的包管理工具CocoaPods的更多相关文章

  1. iOS包管理工具Cocoapods的安装与使用

    转自:http://www.sxt.cn/u/10014/blog/6448 在我们开发移动应用的时候,一般都会使用到第三方工具,而由于第三方类库的种类繁多,我们在项目中进行管理也会相对麻烦,所以此时 ...

  2. IOS开发依赖管理工具CocoaPods

    CocoaPods IOS开发依赖管理工具 CocoaPods is a dependency manager for Swift and Objective-C Cocoa projects. It ...

  3. iOS开发者的管理工具-CocoaPods安装

    1. 安装 Ruby 对于iOS开发者,CocoaPods是最方便使用的第三方管理工具了,但是怎么安装CocoaPods呢,安装CocoaPods之前,要确保mac已经安装上Ruby,但在安装Ruby ...

  4. python包管理工具他们之间的关系

    python包管理工具之间的关系 现在的python包管理工具有很多,非常混乱,必须理清他们之间的关系才能更好的使用python构建强大的包关系系统工具. 首先:python官方推荐的第三方库是PyP ...

  5. Linux rpm包管理工具

    1.什么是rpm包 是一种编译好的二进制软件包,安装速度快. 2.rpm包命名 el6:软件包用于在Red Hat 6.x, CentOS 6.x, and CloudLinux 6.x进行安装 el ...

  6. Carthage 包管理工具,另一种敏捷轻快的 iOS & MAC 开发体验 | SwiftCafe 咖啡时光

    说起 iOS 开发的包管理,大家就不由得会想起 CocoaPods, 它确实是一个强大的工具.但这次咱们来关注另外一个包管理工具 Carthage,如果说 CocoaPods 像一个航母,一应俱全,坚 ...

  7. python 包管理工具pip安装与使用

    pip是python的一个包管理工具,与之类似的工具还有easy_install.根据官网的说法 如果你的python版本在Python 2 >=2.7.9 or Python 3 >=3 ...

  8. 怎样安装pip--python的包管理工具

    pip是python的包管理工具,使用它来安装python的模块很方便. pip支持的操作系统:Unix/Linux, OS X, and Windows. 支持的python版本号:2.6, 2.7 ...

  9. Mac上安装brew 包管理工具

    Mac 上的包管理工具对于开发者来说是一件非常方便的工具,能够有效的对包进行管理. 所以这篇博客就来简单的讲一下brew 的安装和一些基础命令. brew 全称叫做Homebrew . 1. 首先来说 ...

随机推荐

  1. 杂项:Office Visio

    ylbtech-杂项:Office Visio Office Visio 是一款便于IT和商务人员就复杂信息.系统和流程进行可视化处理.分析和交流的软件.使用具有专业外观的 Office Visio ...

  2. 廖雪峰Java1-1Java入门-java简介

    Java特点: 一种面向对象的跨平台变成语言 以字节码方式运行在虚拟机上 自带功能齐全的类库 非常活跃的开源社区支持 Java优点: 简单.健壮.安全 跨平台,一次编写,到处运行 高度优化的虚拟机 J ...

  3. Nexus3 仓库搭建(基于Docker)

    Nexus Repository OSS 支持的仓库类型 安装方法(使用docker) 命令: sudo docker run -d \ --name nexus3 \ --restart=alway ...

  4. Delphi Webbrowser使用方法详解(一)

    1.webbroser介绍 该组件是一个浏览器组件,可以显示一个指定地址的网页.设置网页打开时的主页以及对网页进行相关的操作,同时也可以对HTML文件进行剪切.复制.粘贴.删除等操作.该 组件在Int ...

  5. uva-539-枚举

    题意: 给你一个无向图,找最长路. 俩份代码,感觉map[][]简单易懂啊 #include<stdio.h> #include<iostream> #include<s ...

  6. linux 基本。。

    一. 将磁盘分区挂载为只读 这一步很重要,并且在误删除文件后应尽快将磁盘挂载为只读.越早进行,恢复的成功机率就越大. 1.  查看被删除文件位于哪个分区 [root@localhost  ~]# mo ...

  7. POI 解析excel 空行问题

    https://www.cnblogs.com/interdrp/p/4019583.html

  8. leetcode83

    /** * Definition for singly-linked list. * public class ListNode { * public int val; * public ListNo ...

  9. 无法读取用户配置文件,系统自动建立Temp临时用户

    chkdsk/f 删除用户目录下的 ntuser.dat.LOG 文件,重新登陆即可. 对于新建用户的情况: 一.Default User文件夹不完整或者被删除了,导致系统无法复制新的一份.这种情况的 ...

  10. UI5-文档-4.9-Component Configuration

    在我们介绍了模型-视图-控制器(MVC)概念的所有三个部分之后,现在我们将讨论SAPUI5的另一个重要的结构方面. 在这一步中,我们将把所有UI资产封装在一个独立于索引的组件中.html文件.组件是S ...