使用coocapods1.1.1无法成功创建pod工程文件的解决方法

今天在开发的过程中由于手贱将系统工程删了,然后再次重新git clone下拉工程并使用 cocoapods 进行对第三方库的安装,然而失败了。错误代码如下:

1
2
Generating Pods project
[1] 93845 abort pod install

经过大佬的提醒,仔细看了下公司机子仍旧能够正确使用 cocoapods ,同时 cocoapods 也无法正确下拉我以前写好的代码,所以最后问题归结到 cocoapods 上面,然后各种胡乱下载。导致就连最基本的 pod 代码都无法使用,现象如下

1
2
3
4
5
/Library/Ruby/Site/2.0.0/rubygems/dependency.rb:308:in `to_specs': Could not find 'cocoapods' (>= 0) among 50 total gem(s) (Gem::MissingSpecError)
Checked in 'GEM_PATH=/Users/*username*/.gem/ruby/2.0.0:/Library/Ruby/Gems/2.0.0:/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/gems/2.0.0', execute `gem env` for more information
from /Library/Ruby/Site/2.0.0/rubygems/dependency.rb:320:in `to_spec'
from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_gem.rb:65:in `gem'
from /usr/local/bin/pod:22:in `<main>'

很明显被我玩坏了,┑( ̄Д  ̄)┍

所以没办法继续搜方法。

根据 stackOverflow 上面的介绍,应该是 ruby 2.0.0 和 cocoapods 相冲突导致的 bug 。那就按照原来的方法升级下 ruby 就好了。

解决方法

  1. 首先删除现在已经有的 cocoapods ,由于安装 cocoapods 的时候距离现在已经很久,所以搜了下相关的内容。发现 cocoapods 不仅仅只有一个 cocoapods 主件,还有其他一起的插件。仔细想想貌似之前只删除了 cocoapods 的内容。所以导致 pod 都无法使用。在terminal中输入下面的代码,必要的时候可以使用sudo。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    gem uninstall cocoapods
    gem uninstall cocoapods-core
    gem uninstall cocoapods-deintegrate
    gem uninstall cocoapods-downloader
    gem uninstall cocoapods-plugins
    gem uninstall cocoapods-search
    gem uninstall cocoapods-stats
    gem uninstall cocoapods-try
    gem uninstall cocoapods-trunk
  2. ​完成了上面这个步骤,我们基本上原有的cocoapods已经删光了,接下来就是安装新版本。首先输入gem install cocoapods --pre,安装cocoapods,这个时候装的是上一个新的release版本的cocoapods。

  3. 当然对于很久以前使用的ruby用户,由于引用的源是ruby的官方源,但是因为是墙外,同时距离又远,所以可能会十分慢,而网上的ruby-china的源貌似请求也是失败的,而老的淘宝源已经过期了,所以,这里更新为新的阿里云的数据源(每隔15分钟更新一次)地址是:https://rubygems-china.oss.aliyuncs.com/,你可以直接访问查看下,但是他首页的命令还是老的淘宝,所以需要更新下。你可以尝试使用下面这条命令来进行修改:
    • 使用gem sources -l来查看你的现在保存的源的路径:yourPath。
    • 然后使用gem sources --remove yourPath删除现有源
    • 使用gem sources -a https://rubygems-china.oss.aliyuncs.com/来添加新的源,这样你就可以调用国内的源
    • gem install rails
  4. 这里我遇到了一个问题,我的ruby版本太低,导致了无法安装cocoapods(我以前到底是怎么装上的,(╯‵□′)╯︵┻━┻)
  5. 然后我就安装用rvm(ruby version management)来进行ruby的版本管理。
    • 在命令行中输入$ curl -L get.rvm.io | bash -s stable
    • 过了一段时间,就安装完了,然后设置全局命令
    • source ~/.bashrcsource ~/.bash_profile用来设置当前用户和全局命令。
    • 使用 rvm -v 来测试是否正确安装。
  6. 首先使用rvm list known来查看所有的ruby版本
  7. 然后使用rvm install version就能愉快的安装了。
  8. 然而后面有个坑,不知道是什么问题导致,最后还是出现了问题,所以我借鉴了这篇文章,最后将源添加为最开始的国外官方源,然后使用sudo pod install cocoapods --pre,安装了cocoapods 1.2.0 beta-3。最后能够成功安装。