Cocoapods使用过程中遇到的问题
前言:记录一些在CocoaPods使用过程中遇到的问题,本地环境:Xcode9.0
- 发现有的时候在执行pod init的时候不能正常地创建出来pod File文件,显示的错误如下:
――― MARKDOWN TEMPLATE ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― ### Command ```
/Users/wangyongwangyongwang/.rvm/rubies/ruby-2.3./bin/pod init
``` ### Report * What did you do? * What did you expect to happen? * What happened instead? ### Stack ```
CocoaPods : 1.0.
Ruby : ruby 2.3.0p0 (-- revision ) [x86_64-darwin15]
RubyGems : 2.6.
Host : Mac OS X 10.12. (16G29)
Xcode : 9.0 (9A235)
Git : git version 2.10.
Ruby lib dir : /Users/wangyongwangyongwang/.rvm/rubies/ruby-2.3./lib
Repositories : master - https://github.com/CocoaPods/Specs.git @ 74d8002565cb1b582426b5affef1b97991b4c14c
``` ### Plugins ```
cocoapods-deintegrate : 1.0.
cocoapods-plugins : 1.0.
cocoapods-search : 1.0.
cocoapods-stats : 1.0.
cocoapods-trunk : 1.0.
cocoapods-try : 1.1.
``` ### Error ```
RuntimeError - [Xcodeproj] Unknown object version.
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3.@global/gems/xcodeproj-1.3./lib/xcodeproj/project.rb::in `initialize_from_file'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3.@global/gems/xcodeproj-1.3./lib/xcodeproj/project.rb::in `open'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3.@global/gems/cocoapods-1.0./lib/cocoapods/command/init.rb::in `validate!'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3.@global/gems/claide-1.0./lib/claide/command.rb::in `run'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3.@global/gems/cocoapods-1.0./lib/cocoapods/command.rb::in `run'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3.@global/gems/cocoapods-1.0./bin/pod::in `<top (required)>'
/Users/wangyongwangyongwang/.rvm/rubies/ruby-2.3./bin/pod::in `load'
/Users/wangyongwangyongwang/.rvm/rubies/ruby-2.3./bin/pod::in `<main>'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./bin/ruby_executable_hooks::in `eval'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./bin/ruby_executable_hooks::in `<main>'
``` ――― TEMPLATE END ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― [!] Oh no, an error occurred. Search for existing GitHub issues similar to yours:
https://github.com/CocoaPods/CocoaPods/search?q=%5BXcodeproj%5D+Unknown+object+version.&type=Issues If none exists, create a ticket, with the template displayed above, on:
https://github.com/CocoaPods/CocoaPods/issues/new Be sure to first read the contributing guide for details on how to properly submit a ticket:
https://github.com/CocoaPods/CocoaPods/blob/master/CONTRIBUTING.md Don't forget to anonymize any private data! wangwang:WWTestCocoaPodsError wangyongwangyongwang$
执行pod init的时候的错误提示
解决问题:根据错误提示可以发现参考 使用CocoaPods出现问题的时候都可以查看CocoaPods issues 我这边的错误是参考的 pod init error #7208
解决方法:关键的命令是这一句:Try gem install cocoapods -v 1.4.0.beta.2 or gem install cocoapods -v 1.3.1
然后就没问题了
插曲:其实我在解决上边问题的时候,第一次忘了输入cocoapods了,然后报错如下
ERROR: While executing gem ... (Gem::CommandLineError)
Please specify at least one gem name (e.g. gem build GEMNAME)
解决办法:后来我正确输入命令没问题后,就解决了这个问题了
自我分析:上边的命令是让我们更新Cocoapods到1.3.1版本,我在更新前都是用的比较老的1.0.1 (pod --version查看安装的Cocoapods的版本)
多想一点CocoaPods的本质到底是什么:
深入理解 CocoaPods 提到CocoaPods 是开发 OS X 和 iOS 应用程序的一个第三方库的依赖管理工具。CocoaPods是用 Ruby 写的,并由若干个 Ruby 包 (gems) 构成的。所以她才会用gem intall 这种方式安装Cocoapods
CocoaPods是这么说自己的:CocoaPods is a dependency manager for Swift and Objective-C Cocoa projects. It has over 39 thousand libraries and is used in over 2.7 million apps. CocoaPods can help you scale your projects elegantly.CocoaPods is built with Ruby and is installable with the default Ruby available on OS X. We recommend you use the default ruby.
CocoaPods是对于Swift和Objective-C的Cocoa项目的依赖管理工具,她已有39000多个库,并且应用于27万多个app。CocoaPods可以帮助你使你的项目更小更优雅。CocoaPods的基础是Ruby,并且OS X上默认已经安装了Ruby,我们建议您使用默认的Ruby。
2.在使用pod update --verbose --no-repo-update的时候不能够正常地导入所要导入的第三方库
我要导入的库是 pod 'CYLTabBarController', '~> 1.14.1'
提示的问题是:
Update all pods
Preparing Analyzing dependencies Inspecting targets to integrate
Using `ARCHS` setting to build architectures of target
`Pods-WWCopyHomeWorkBox`: (``)
Using `ARCHS` setting to build architectures of target
`Pods-WWCopyHomeWorkBoxTests`: (``)
Using `ARCHS` setting to build architectures of target
`Pods-WWCopyHomeWorkBoxUITests`: (``) Resolving dependencies of `Podfile`
[!] Unable to satisfy the following requirements: - `CYLTabBarController (~> 1.14.)` required by `Podfile` None of your spec sources contain a spec satisfying the dependency: `CYLTabBarController (~> 1.14.)`. You have either:
* out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`.
* mistyped the name or version.
* not added the source repo that hosts the Podspec to your Podfile. Note: as of CocoaPods 1.0, `pod repo update` does not happen on `pod install` by default. /Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./gems/cocoapods-1.3./lib/cocoapods/resolver.rb::in `handle_resolver_error'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./gems/cocoapods-1.3./lib/cocoapods/resolver.rb::in `rescue in resolve'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./gems/cocoapods-1.3./lib/cocoapods/resolver.rb::in `resolve'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./gems/cocoapods-1.3./lib/cocoapods/installer/analyzer.rb::in `block in resolve_dependencies'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./gems/cocoapods-1.3./lib/cocoapods/user_interface.rb::in `section'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./gems/cocoapods-1.3./lib/cocoapods/installer/analyzer.rb::in `resolve_dependencies'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./gems/cocoapods-1.3./lib/cocoapods/installer/analyzer.rb::in `analyze'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./gems/cocoapods-1.3./lib/cocoapods/installer.rb::in `analyze'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./gems/cocoapods-1.3./lib/cocoapods/installer.rb::in `block in resolve_dependencies'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./gems/cocoapods-1.3./lib/cocoapods/user_interface.rb::in `section'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./gems/cocoapods-1.3./lib/cocoapods/installer.rb::in `resolve_dependencies'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./gems/cocoapods-1.3./lib/cocoapods/installer.rb::in `install!'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./gems/cocoapods-1.3./lib/cocoapods/command/update.rb::in `run'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./gems/claide-1.0./lib/claide/command.rb::in `run'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./gems/cocoapods-1.3./lib/cocoapods/command.rb::in `run'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./gems/cocoapods-1.3./bin/pod::in `<top (required)>'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./bin/pod::in `load'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./bin/pod::in `<main>'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./bin/ruby_executable_hooks::in `eval'
/Users/wangyongwangyongwang/.rvm/gems/ruby-2.3./bin/ruby_executable_hooks::in `<main>'
检查了本地的版本:pod --version
wangwang:WWCopyHomeWorkBox wangyongwangyongwang$ pod --version
1.3.
检查pod 库中是否存在我们要添加的相应的版本的pod库:当我执行pod Search CYLTabBarController的时候显示如下:显示表明 pod 库里边有我要添加的这个版本
wangwang:WWCopyHomeWorkBox wangyongwangyongwang$ pod search CYLTabBarController -> CYLTabBarController (1.14.)
Highly customizable tabBar and tabBarController for iOS
pod 'CYLTabBarController', '~> 1.14.2'
- Homepage: https://github.com/ChenYilong/CYLTabBarController
- Source: https://github.com/ChenYilong/CYLTabBarController.git
- Versions: 1.14., 1.14., 1.14., 1.13., 1.13., 1.13., 1.12., 1.12.,
1.11., 1.10., 1.9., 1.8., 1.7., 1.6., 1.6., 1.6., 1.6., 1.6.,
1.6., 1.6., 1.6., 1.5., 1.5., 1.5., 1.5., 1.5., 1.5., 1.5., 1.4.,
1.4., 1.4., 1.4., 1.4., 1.4., 1.3., 1.3., 1.3., 1.3., 1.2., 1.2.,
1.2., 1.2., 1.2., 1.2., 1.2., 1.2., 1.2., 1.2., 1.1., 1.1., 1.0.,
1.0., 1.0., 1.0., 1.0., 1.0., 1.0., 1.0., 1.0. [master repo] -> CYLTabBarController-JDBR (0.0.)
Highly customizable tabBar and tabBarController for iOS
pod 'CYLTabBarController-JDBR', '~> 0.0.1'
- Homepage: https://github.com/jidibingren/CYLTabBarController
- Source: https://github.com/jidibingren/CYLTabBarController.git
- Versions: 0.0. [master repo]
(END)
最后是直接执行的pod update
然后就下载pod 库(CYLTabBarController)成功了
wangwang:WWCopyHomeWorkBox wangyongwangyongwang$ pod update
Update all pods
Updating local specs repositories
$ /usr/local/bin/git -C /Users/wangyongwangyongwang/.cocoapods/repos/master
fetch origin --progress
remote: Counting objects: , done.
remote: Compressing objects: % (/), done.
remote: Total (delta ), reused (delta ), pack-reused
Receiving objects: % (/), 3.26 MiB | 1.72 MiB/s, done.
Resolving deltas: % (/), completed with local objects.
From https://github.com/CocoaPods/Specs
e1a2033..e327ca5 master -> origin/master
$ /usr/local/bin/git -C /Users/wangyongwangyongwang/.cocoapods/repos/master
rev-parse --abbrev-ref HEAD
master
$ /usr/local/bin/git -C /Users/wangyongwangyongwang/.cocoapods/repos/master
reset --hard origin/master
Checking out files: % (/), done.
HEAD is now at e327ca5 [Add] OptimizelySDKUserProfileService 1.5.-RC
warning: inexact rename detection was skipped due to too many files. CocoaPods 1.4..beta. is available.
To update use: `gem install cocoapods --pre`
[!] This is a test version we'd love you to try. For more information, see https://blog.cocoapods.org and the CHANGELOG for this version at https://github.com/CocoaPods/CocoaPods/releases/tag/1.4.0.beta.2 Analyzing dependencies
Downloading dependencies
Installing CYLTabBarController (1.14.)
Generating Pods project
Integrating client project [!] Please close any current Xcode sessions and use `WWCopyHomeWorkBox.xcworkspace` for this project from now on.
Sending stats
Pod installation complete! There is dependency from the Podfile and total pod installed.
先写到这么多,以后再更新;
如有问题,敬请指正;
如需转载,请注明出处,谢谢!
Cocoapods使用过程中遇到的问题的更多相关文章
- CocoaPods安装过程中的大坑
一.CocoaPods是什么? CocoaPods是一个用Ruby写的.负责管理iOS项目中第三方开源库的工具,CocoaPods能让我们集中的.统一管理第三方开源库,为我们节省设置和更新第三方开源库 ...
- cocoapods安装以及使用,安装过程中ruby版本过低
cocoapods安装以及使用,安装过程中ruby版本过低 字数473 阅读103 评论1 喜欢2 1.打开终端 2.移除现有 Ruby 默认源 $ gem sources --remove http ...
- 最新cocoapods安装流程,安装过程中遇到的问题及解决方法
最近重新安装了一次cocoapods,参考的安装流程:http://blog.csdn.net/showhilllee/article/details/38398119/ 但是现在的cocoapods ...
- iOS 学习笔记二【cocopods安装使用和安装过程中遇到的问题及解决办法】【20160725更新】
在osx 10.11之前cocopods问题不多,但是升级到11之后的版本,之前的cocopods大多用不了,需要重新安装,对于我这种使用测试版系统的技术狂来说,每次都需要重新安装很多东西, 当然,c ...
- Cocoapods安装过程
1.升级Ruby环境 gem -v gem update --system 如果没有权限去升级Ruby ?就输入 sudo gem update --system 2.换掉Ruby镜像 首先移除现有的 ...
- iOS cocopods安装使用和安装过程中遇到的问题及解决办法
在osx 10.11之前cocopods问题不多,但是升级到11之后的版本,之前的cocopods大多用不了,需要重新安装,对于我这种使用测试版系统的技术狂来说,每次都需要重新安装很多东西, 当然,c ...
- iOS安装CocoaPods详细过程
iOS安装CocoaPods详细过程 一.简介 什么是CocoaPods CocoaPods是OS X和iOS下的一个第三类库管理工具,通过CocoaPods工具我们可以为项目添加被称为“Pods”的 ...
- WINDOWS系统下MYSQL安装过程中的注意事项
1.首先MySQL的安装方式有两种:一种是MSI安装方式,很简单就像安装Windows软件一样.另外一种就是ZIP安装方式.这种相对而言比较麻烦.新手推荐MSI安装方式. 安装方式有以下两种: MSI ...
- 【转】SQL Server -- 已成功与服务器建立连接,但是在登录过程中发生错误
SQL Server -- 已成功与服务器建立连接,但是在登录过程中发生错误 最近在VS2013上连接远程数据库时,突然连接不上,在跑MSTest下跑的时候,QTAgent32 crash.换成IIS ...
随机推荐
- 实例讲解webpack的基本使用第四篇
这一篇来讲解一下webpack的loader的使用,用webpack打包文件,css,img,icon等都需要下载安装对应的loader文件,并且写好配置项,才可以进行打包,废话不多说,直接开始实战. ...
- 支持向量机SVM(二)
[转载请注明出处]http://www.cnblogs.com/jerrylead 6 拉格朗日对偶(Lagrange duality) 先抛开上面的二次规划问题,先来看看存在等式约束的极值问题求法, ...
- java中log4j学习笔记
Log4j是apache的一个开源项目,用来操作程序日志信息的框架.因便于管理,在工程中用来代替System.out打印语句.通过配置Log4j中的log4j.properties,可以指定日志信息的 ...
- Linux下将Apache(httpd)新增为系统服务及开机自启动
1. 查看一下/etc/init.d/下是否存在httpd这个服务 ls /etc/init.d/ | grep httpd 如果没有执行下一步 2.将自己安装目录下的apachect1复制到该目录下 ...
- FPGA多时钟处理应用
FPGA项目设计中,通常会遇到多时钟处理.即一个PLL输出多个时钟,根据条件选择合适的时钟用作系统时钟.方案一: 外部晶振时钟进入PLL,由PLL输出多个时钟,MUX根据外部条件选择时钟输出做为系统使 ...
- 【转】Python中实现远程调用(RPC、RMI)简单例子
远程调用使得调用远程服务器的对象.方法的方式就和调用本地对象.方法的方式差不多,因为我们通过网络编程把这些都隐藏起来了.远程调用是分布式系统的基础. 远程调用一般分为两种,远程过程调用(RPC)和远程 ...
- zoj3211dream city dp 斜率
Dream City Time Limit: 1 Second Memory Limit:32768 KB JAVAMAN is visiting Dream City and he see ...
- flex的三个属性:
(1)flex-grow:指的是相对于其他的子元素的扩展比率:默认值为0:数字 (2)flex-basis:指的是子元素的具体长度:可以为长度(rem,px,em)也可以为百分比: (3)flex-s ...
- Mysql安装后打开MySQL Command Line Client闪退解决方法
1.开始菜单下;Mysql--->mysql server 5.6-->mysql command line Client ---右击,选择属性 2.在属性下查看目标位置: 3.将安装目录 ...
- ssm搭建报错
在搭建ssm框架时候踩得坑:1.对于拦截器url-parttern的设置:第一次设置的是/** 本以为这个是表示拦截所有,没想到这是错误的写法,正确的写法是/ 启动项目不会报错,但是会出现404 ...