最新cocoapods安装流程,安装过程中遇到的问题及解决方法
最近重新安装了一次cocoapods,参考的安装流程:http://blog.csdn.net/showhilllee/article/details/38398119/
但是现在的cocoapods与之前比较。有很多不一样的地方。挣扎了2天,终于搞定。现在纪录一下。
1.首先查看ruby是否是最新版的。ruby是通过rvm安装的所以需要先安装rvm后查看ruby是否是最新的(通过查看ruby版本列表来判断),在终端需要中输入以下命令:
(1)安装RVM.RVM:Ruby Version Manager,Ruby版本管理器,包括Ruby的版本管理和Gem库管理(gemset)
curl -L get.rvm.io | bash -s stable
等待一段时间后就可以成功安装好 RVM
source ~/.bashrc
source ~/.bash_profile
测试是否安装正常
rvm -v
(2)用RVM升级Ruby
- #查看当前ruby版本
- $ ruby -v
- ruby 2.0.0
- #列出已知的ruby版本 --找到最新的版本安装
- $ rvm list known
- #安装ruby 2.6.4
- $ rvm install 2.6.4
2.更换Ruby镜像--淘宝的那个镜像(https://ruby.taobao.org/ )已经不可用了。官方的需要FQ。所以我们现在用最新支持的ruby镜像(https://gems.ruby-china.org/)
需要的命令行:
gem sources --remove https://rubygems.org/
gem sources -a https://gems.ruby-china.org/
gem sources -l (用来检查使用替换镜像位置成功)
出现则说明成功了。
3.下载安装CocoaPods
在命令行中输入:
安装:sudo gem install cocoapods
更新:sudo gem update cocoapods
在这里会很快就好了。。。网上教程说这样就已经完成安装了。。但我试了一下,直接搜索一下。在终端中输入:pod search AFNetworking。会出现“Setting up CocoaPods master repo“提示,而且很久一直不动,网上说因为没FQ的原因。但是我们已经将bury镜像已经改了,为什么还会这样呢?。还有一个原因是因为在后台下载,还没下载完成,所以会这样。
在这里我等了好久。通过新开一个终端窗口,输入"cd ~/.cocoapods/"命令行跳到cocoapods文件夹内,执行"du -sh *"查看文件夹的大小。发现一直是0。快崩溃了。下班回去休息。
第二天。我重头再来。首先将ruby更新到最新(上边方法)、将gem更新到最新、将cocoapods更新到最新。在将cocoapods更新到最新时,查到需要执行"pod setup",但是执行这个时会出现一直是“Setting up CocoaPods master repo“,但是查看大小还是0。此外还会出现下面这个新的错误(这个发现让我欣喜若狂,起码不是那么单调了,或许会成为突破口):
[!] An error occurred while performing `git pull` on repo `master`.
[!] /usr/bin/git pull --ff-only
这个错误应该是说这个节点有问题。就又找资料,然后试试把cocoapods的节点删除,重新添加一个节点,或许就行,说干就干:
原因: Cocoapods的分支不支持当前最新的Xcode版本
解决办法: 删除master分支 重新建立新的分支
sudo rm -fr ~/.cocoapods/repos/master
然后再: pod setup
------------------------------分割线-----------------------------------------------------
在pod setup的过程中又是这个提示"Setting up CocoaPods master repo",当时的感觉就快要砸电脑了,最后不死心去查看了一下cocoapods文件夹的大小。结果:
。。没错,没有看错,大小居然一直在增加。心怀激动的慢慢等待。
过了大概十几二十分钟左右,pod setup这个操作成功了。
这样,整个cocoapods安装应该成功了吧。我迫不及待的 想要试试。输入"pod search AFNetworking" 居然有内容出来。然后按照之前的教程在终端中,cd到项目总目录
cd /Users/md098/Desktop/PodTest
建立Podfile(配置文件)
接着上一步,终端输入 vim Podfile
键盘输入 i,进入编辑模式,输入
platform :ios, '7.0'
pod 'MBProgressHUD', '~> 0.8'
然后按Esc,并且输入“ :”号进入vim命令模式,然后在冒号后边输入wq
注意:键盘输入 :后,才能输入wq。回车后发现PodTest项目总目录中多一个Podfile文件
激动人心的时刻到了:确定终端cd到项目总目录,然后输入 pod install。。。然后你会发现。。。
提示这个错误:[!] The dependency `MBProgressHUD` is not used in any concrete target.
原来新的cocoapods不能像之前那样安装第三方了。现在的格式是要加上项目的target。如下:
platform :ios, '8.0'
use_frameworks!
target 'MyApp' do
pod 'AFNetworking', '~> 2.6'
pod 'ORStackView', '~> 3.0'
pod 'SwiftyJSON', '~> 2.3'
end
- 里面的 MyApp 记得替换为自己攻城里面的target。这样就基本OK了,执行pod install / pod update 就都可以了。
end:终于结束了。总结:安装过程出错,则删除并重新(更新)所有的需要的环境:(ruby、gem、cocoapods、其中包括cocoapods的节点),替换新的ruby镜像即可。
最新cocoapods安装流程,安装过程中遇到的问题及解决方法的更多相关文章
- 国内不fq安装K8S四: 安装过程中遇到的问题和解决方法
目录 4 安装过程中遇到的问题和解决方法 4.1 常见问题 4.2 常用的操作命令 4.3 比较好的博客 国内不fq安装K8S一: 安装docker 国内不fq安装K8S二: 安装kubernet 国 ...
- 将html代码部署到阿里云服务器,并进行域名解析,以及在部署过程中遇到的问题和解决方法
本博客主要是说一下,,如何将html代码部署到阿里云服务器,并进行域名解析,以及在部署过程中遇到的问题和解决方法. 1.先在阿里云上购买一台阿里云服务器(ECS云服务器): 2.远程连接上该服务器,在 ...
- 2016最新cocoapods安装流程,安装过程中遇到的问题及解决方法
现在的cocoapods与之前比较.有很多不一样的地方.自己试了一试,终于搞定.现在大概纪录一下. 1.首先查看ruby是否是最新版的. ruby是通过rvm安装的所以需要先安装rvm后查看ruby是 ...
- caffe安装过程中遇到的问题以及解决方法
1. 在安装依赖库的时候,遇到: @gxjun-Latitude-E5440:~$ sudo apt-get install libatlas-base-dev 正在读取软件包列表... 完成 正在分 ...
- Tomcat启动过程中找不到JAVA_HOME解决方法
在XP上明明已经安装了JDK1.5并设置好了JAVA_HOME,可偏偏Tomcat在启动过程中找不到. 报错信息如下:Neither the JAVA_HOME nor the JRE_HOME en ...
- 蘑菇街TeamTalk编译连接过程中遇到的问题及解决方法(iOS)
今天浏览博文的时候,“蘑菇街开源的即时通讯框架,包括iOS.Android.Mac.Windows客户端和后台 Github源码下载地址:https://github.com/mogujie/Team ...
- InstallShield 工程类型MSI 使用过程中碰到的问题及解决方法。
原文 http://www.cnblogs.com/daocaorenbx/p/InstallShield.html 一.安装完 桌面创建IE快捷方式: 1. install script可以直接建 ...
- Hadoop环境搭建过程中遇到的问题以及解决方法
1.启动hadoop之前,ssh免密登录slave主机正常,使用命令start-all.sh启动hadoop时,需要输入slave主机的密码,说明ssh文件权限有问题,需要执行以下操作: 1)进入.s ...
- 使用rabbitmq过程中遇到的问题及解决方法记录。
OS: Linux ---Centos7RabbitMQ版本:RabbitMQ version: 3.8.1erlang版本:Erlang configuration: Erlang/OTP 22 [ ...
随机推荐
- JS单例设计模式
单例,指的是只有一个实例的对象. 在应用单例模式时,生成单例的类必须保证只有一个实例的存在,很多时候整个系统只需要拥有一个全局对象,才有利于协调系统整体的行为.比如在整个系统的配置文件中,配置 ...
- centos6.4 安装erlang
erlang官网: http://www.erlang.org 下载程序去年:
- 【转】iOS 浅谈:深.浅拷贝与copy.strong
深.浅拷贝 copy mutableCopy NSString 1 2 3 4 5 6 NSString *string = @"汉斯哈哈哈"; // 没有产生新对象 NSStri ...
- HDU 5734 Acperience (推导)
Acperience 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5734 Description Deep neural networks (DN ...
- javascript中字符串的trim功能表达式
string.replace(/(^\s*)|(\s*$)/g, "") 用来删除行首行尾的空白字符(包括空格.制表符.换页符等等)
- linux系统日常管理
笔者在前面介绍的内容都为linux系统基础类的,如果你现在把前面的内容全部很好的掌握了,那最好了.不过笔者要说的是,即使你完全掌握了,你现在还是不能作为一名合格的linux系统管理员的,毕竟系统管理员 ...
- Java学习笔记(三):数组
数组声明 java语言中,数组是一种最简单的复合数据类型.数组是有序数据的集合,数组中的每个元素具有相同的数据类型,可以用一个统一的数组名和下标来唯一地确定数组中的元素. int arr1[]; in ...
- 框架学习笔记:Unity3D的MVC框架——StrangeIoC
作为从AS3页游走过来的人,看见StrangeIoC会额外亲切,因为StrangeIoC的设计和RobotLegs几乎一致,作为一款依赖注入/控制反转(IoC)的MVC框架,StrangeIoC除了使 ...
- 让人眼花缭乱的 RSS 版本0.90、0.91、0.92、0.93、0.94、1.0 和 2.0
1.0的规范 http://web.resource.org/rss/1.0/spec 2.0的规范 http://cyber.law.harvard.edu/rss/rss.html 一个介绍什么是 ...
- typdef struct 语法
1:结构体 C语言中定义一个结构体的语法如下: struct tagMyStruct { int age; int sex; }; 其中,tagMyStruct是结构体名,在使用时,需要和struct ...