卸载cocoapods:

localhost:~ je$ sudo gem uninstall cocoapods
Remove executables:
pod, sandbox-pod in addition to the gem? [Yn] Y
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /usr/bin directory.
localhost:~ je$ sudo gem install cocoapods -n /usr/local/bin
Successfully installed cocoapods-1.5.
Parsing documentation for cocoapods-1.5.
Done installing documentation for cocoapods after seconds
gem installed
localhost:~ jerry$

如果想删除本地的 pod repo, 可以这样:

  rm -fr ~/.cocoapods/

CocoaPods用来管理第三方框架

Mac 安装 Cocoapods

导引如果你的 Mac OSX 升级到 10.11.x+, 并且需要安装 Cocoapods, 可以参考本博客.安装 rubyMac 系统自带了 ruby, 但是建议大家使用 Homebrew 安装 ruby.

因为 Cocoapods 升级需要对应的 ruby 版本也要升级, 使用 Homebrew 比较方便.

安装 ruby: brew install ruby

查看当前安装的 ruby 版本: ruby -v

会得到类似下面的信息:ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin15]

gem 是管理 Ruby 库和程序的标准包.
安装了 ruby, 自带了 gem 工具.

可以使用 gem -v 查看 gem 版本.

安装 Cocoapods

1.移除原来的源, 不管以前是否安装过 Cocoapods.

  gem sources --remove https://ruby.taobao.org/

2.重新添加源, 注意是 https.

  gem sources -a https://gems.ruby-china.org/

之前 taobao 的源 好像已经不行了.

3.查看是否添加成功, 该步骤可选.

  gem sources -l

安装, 使用 root 权限安装.

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

这种安装方式, 会安装最新的 release 版本.

你也可以使用下面两种方式来安装.

  • 指定版本安装

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

  • 安装最新的 release beta 版本

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

卸载 Cocoapods

卸载 Cocoapods 只需执行:

  sudo gem uninstall cocoapods

如果想删除本地的 pod repo, 可以这样:

  rm -fr ~/.cocoapods/

建立本地 repo

安装完 Cocoapods 后, 需要建立本地的 repo.

  pod setup

即使你现在不执行 pod setup, 后面进行 pod install 或者 pod update 的时候, 也会自动的进行 pod setup.

执行 pod setup 的目的是将所有第三方的 podspec 索引文件更新到本地的 ~/.cocoapods/repos 目录中.

安装使用中遇到的问题

问题1: 命令行执行 pod 发生: pod command not found, 但是 sudo pod 却可以执行.

解决方案即如下步骤

  • 卸载原有的 Cocoapods

    sudo gem uninstall cocoapods

  • 重新安装 Cocoapods

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

  • 赋予/usr/local/bin给予执行与读取权限

    sudo chmod -R +rx /usr/local/bin/

建议最好设置代理.

问题2: 更新 gem 过程中, 遇到

  Operation not permitted - /usr/bin/update_rubygems

可以通过通过 brew 安装 ruby 解决.

  brew install ruby

问题3: pod setup 失败

失败提示信息类似:

Cloning into 'master'...
error: RPC failed; curl 56 SSLRead() return error -36
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed

解决方案: 更新 gem

  sudo gem update --system

问题4: 添加源, 提示如下问题

  source https://gems.ruby-china.org/ already present in the cache

这个说明你已经添加过该源, 可以使用

  gem sources -l

来查看已经添加的源.

常用操作

1. sudo gem update --system

更新 gem

2.pod repo update

更新本地仓库.

3.pod search xxx

搜索 cocoapods 项目.

4.pod list

列出所有可用的库.

5.pod install

根据 podfile 和 podfile.lock来安装库.
默认会执行 pod repo update.

可以加入参数 –no-repo-update 不执行 pod repo update.

6.pod update

更新已安装的库到最新版本, 并且创建新的 Podfile.lock 文件.

该命令也会默认会执行 pod repo update.

可以加入参数 –no-repo-update 不执行 pod repo update.

问题:

升级 ruby 到 2.4 版本后, cocoapods 无法使用了.

升级的 ruby 版本信息:

ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-darwin15]

使用任何 pod 命令都报错:

/usr/local/Cellar/ruby/2.4.0/lib/ruby/2.4.0/rubygems.rb:270:in `find_spec_for_exe': can't find gem cocoapods (>= 0.a) (Gem::GemNotFoundException)
from /usr/local/Cellar/ruby/2.4.0/lib/ruby/2.4.0/rubygems.rb:298:in `activate_bin_path'
from /usr/local/bin/pod:22:in `<main>'

查找各种解决方案, 最终还是没有解决.

你可以在 这里 下载 Cocoapods 的 Mac 版本 App 使用.

 

Cocoapods 版本升级步骤

直接升级:sudo gem install cocoapods

或者

查看 Ruby 版本:

$ ruby -v
ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-darwin14]

更新下 Cocoapods 即可,更新步骤:

1、 更新 gem ,国内需切换 gem source

$ sudo gem update --system
$ gem sources --add https://ruby.taobao.org/ --remove https://rubygems.org/

$ gem sources -l
*** CURRENT SOURCES*** https://ruby.taobao.org

2、 安装 cocoapods

$ sudo gem install cocoapods (sudo gem install cocoapods --pre 应用最新测试版)
$ pod setup

和安装过程是一样的,再次查看 pod 版本:

$ pod --version

0.39.0

参考地址:

https://www.cnblogs.com/junhuawang/p/5523516.html

安装、卸载 cocoapods的更多相关文章

  1. inno安装卸载时检测程序是否正在运行卸载完成后自动打开网页-代码无效

    inno安装卸载时检测程序是否正在运行卸载完成后自动打开网页-代码无效 inno setup 安装卸载时检测程序是佛正在运行卸载完成后自动打开网页-代码无效 --------------------- ...

  2. Windows Service的安装卸载 和 Service控制(转)

    Windows Service的安装卸载 和 Service控制 原文地址:http://www.cnblogs.com/Peter-Zhang/archive/2011/10/15/2212663. ...

  3. 帮同事写了几行代码,在 安装/卸载 程序里 注册/卸载 OCX控件

    写了个小控制台程序,这个程序用来注册 / 卸载OCX控件,用在Inno Setup做的安装卸载程序里. #include "stdafx.h" #include <windo ...

  4. 15个Linux Yum命令实例--安装/卸载/更新

    在linux环境中, 安装, 卸载更新包是一个极为常见的操作.大部分的linux环境都提供了包的管理工具, 例如:apt-get, dpkg, rpm, yum等等. 一些Linux环境中,yum是默 ...

  5. Delphi安装/卸载OCX控件的方法

    delphi  安装卸载ocx 请参见 如下 http://blog.csdn.net/xt_chaoji/article/details/7027298 打开Delphi,关闭所有项目. 1.    ...

  6. WPF 自己动手来做安装卸载程序

    原文:WPF 自己动手来做安装卸载程序 前言 说起安装程序,这也许是大家比较遗忘的部分,那么做C/S是小伙伴们,难道你们的程序真的不需要一个炫酷的安装程序么? 声明在先 本文旨在教大家以自己的方式实现 ...

  7. Windows Service的安装卸载 和 Service控制

    原文 Windows Service的安装卸载 和 Service控制 本文内容包括如何通过C#代码安装Windows Service(exe文件,并非打包后的安装文件).判断Service是否存在. ...

  8. Android实训案例(六)——四大组件之一BroadcastReceiver的基本使用,拨号,短信,SD卡,开机,应用安装卸载监听

    Android实训案例(六)--四大组件之一BroadcastReceiver的基本使用,拨号,短信,SD卡,开机,应用安装卸载监听 Android中四大组件的使用时重中之重,我这个阶段也不奢望能把他 ...

  9. Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

    Linux系统Vi/Vim编辑器的简单介绍.安装/卸载.常用命令 1.介绍 vi(Visual Interface)编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下.由于不需要图形界 ...

随机推荐

  1. Go语言获取系统性能数据gopsutil库

    psutil是一个跨平台进程和系统监控的Python库,而gopsutil是其Go语言版本的实现.本文介绍了它的基本使用. Go语言部署简单.性能好的特点非常适合做一些诸如采集系统信息和监控的服务,本 ...

  2. Linux安装yum install gcc-c++出错:Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was 14: curl#6 - "Could not resolve host: mirrorlist.centos...

    错误如图: 解决办法: 1.修改配置文件 /etc/resolv.conf,该配置文件如下: 2.输入:gedit resolv.conf,修改配置文件内容如下: 3.然后重启: 4.重新进行安装: ...

  3. 警告:Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent!

    执行Maven Install打包的时候,提示以下警告信息: [WARNING] Using platform encoding (GBK actually) to copy filtered res ...

  4. linux非root用户下安装软件,搭建生产环境

    之前的用实验室的服务器,因为某些原因,使用的用户没有root权限.linux的非root用户很多软件无法安装,非常的不方便.我的方法是使用brew来代替系统的包管理工具.brew是最先用在mac上的包 ...

  5. ThreadPoolTaskExecutor介绍

    ThreadPoolTaskExecutor是一个spring的线程池技术,其实,它的实现方式完全是使用ThreadPoolExecutor进行实现.对于ThreadPoolExecutor,有一些重 ...

  6. Hive bucket表

    Hive 桶 对于每一个表(table)或者分区, Hive可以进一步组织成桶,也就是说桶是更为细粒度的数据范围划分.Hive也是 针对某一列进行桶的组织.Hive采用对列值哈希,然后除以桶的个数求余 ...

  7. 基于python的selenium两种文件上传操作

    方法一.input标签上传     如果是input标签,可以直接输入路径,那么可以直接调用send_keys输入路径,这里不做过多赘述,前文有相关操作方法. 方法二.非input标签上传 这种上传方 ...

  8. windows任务计划定时备份sqlserver数据库

    使用windows的任务计划新建一个sqlserver数据库的定时备份任务 一.      (我是以sqlserver2008r2数据库版本测试的)在G盘下新建文集夹Database_backup,首 ...

  9. python做傅里叶变换

    傅里叶变换(fft) 法国科学家傅里叶提出,任何一条周期曲线,无论多么跳跃或不规则,都能表示成一组光滑正弦曲线叠加之和.傅里叶变换即是把一条不规则的曲线拆解成一组光滑正弦曲线的过程. 傅里叶变换的目的 ...

  10. Linux 笔记 - 第二十一章 配置 NFS 服务

    一.前言 NFS(Network File System,网络文件系统),主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录.NFS 客户端(一般为应用服务器,例如web)可以通 ...