CocoaPods错误&&相关

作者: 陈胜华 | 来源:发表于2016-06-21 17:04 被阅读1331次

LLDB输入:pod update --verbose --no-repo-update命令后

//显示如下:
Update all pods
  Preparing
Re-creating CocoaPods due to major version update.

Analyzing dependencies
[!] The dependency `SDWebImage (~> 3.7.3)` is not used in any concrete target.
The dependency `pop (~> 1.0.8)` is not used in any concrete target.
The dependency `FMDB (~> 2.5)` is not used in any concrete target.
The dependency `Mantle (~> 2.0.6)` is not used in any concrete target.
The dependency `MJRefresh (~> 3.0.7)` is not used in any concrete target.
The dependency `MBProgressHUD (~> 0.9.1)` is not used in any concrete target.
The dependency `TPKeyboardAvoiding (~> 1.2.11)` is not used in any concrete target.
The dependency `AFNetworking (~> 2.6.3)` is not used in any concrete target.
The dependency `Masonry (~> 0.6.3)` is not used in any concrete target.
The dependency `RongCloudIMKit (= 2.4.0)` is not used in any concrete target.
The dependency `JPush-iOS-SDK (~> 1.8.8)` is not used in any concrete target.
The dependency `WeiboSDK (~> 3.1.3)` is not used in any concrete target.
The dependency `BaiduMapKit (~> 3.0.0)` is not used in any concrete target.

----------------------------------------------
//原因分析:原因是podfile升级到最新版本,pod里的内容必须明确指出所用第三方库的target

//修改如下:
-----------------------
(原Podfile文件)
platform :ios, ‘7.0‘

pod ‘objectiveflickr‘, ‘2.0.4‘
pod ‘LinqToObjectiveC‘, ‘2.0.0‘
pod ‘SDWebImage‘, ‘3.6‘

-----------------------
(修改后Podfile文件)
platform :ios, ‘7.0‘

target "此处填写项目工程名" do

pod ‘objectiveflickr‘, ‘2.0.4‘
pod ‘LinqToObjectiveC‘, ‘2.0.0‘
pod ‘SDWebImage‘, ‘3.6‘

end

//有时候可以这样用
platform :ios, '8.0'
#use_frameworks!个别需要用到它,比如reactiveCocoa

def pods
  pod 'AFNetworking', '~> 2.6'
  pod 'ORStackView', '~> 3.0'
  pod 'SwiftyJSON', '~> 2.3'
end
target 'MyApp' do
  pods
end

Cocoapods导入ReactiveCocoa5.0以上版本注意事项

ReactiveCocoa发布了重大的更新,所以如果想使用最新版本的框架,我们需要注意一下问题。

  • 如果你只是纯 swift 项目,你继续使用 ReactiveCocoa 。但是 RAC 依赖于 ReactiveSwift ,等于你引入了两个库。这种情况下的podfile的文件如下:
use_frameworks!
target 'Target名称' do
pod 'ReactiveCocoa', '5.0.0-alpha.3'
end
  • 如果你的项目是纯 OC 项目,你需要使用的是 ReactiveObjC 。这个库里面包含原来 RAC 2 的全部代码。这种情况下的podfile的文件如下:
use_frameworks!
target 'Target名称' do
pod 'ReactiveObjC', '~> 2.1.0'
end
  • 如果你的项目是 swift 和 OC 混编,你需要同时引用ReactiveCocoa 和 ReactiveObjCBridge 。但是 ReactiveObjCBridge 依赖于 ReactiveObjC ,所以你就等于引入了 4 个库。其中,ReactiveObjCBridge暂不支持cocoapods导入,需要手动导入!!
    这种情况下的podfile的文件如下(注意,ReactiveObjCBridge手动导入就好啦):
use_frameworks!
target 'Target名称' do
pod 'ReactiveObjC', '~> 2.1.0'
pod 'ReactiveCocoa', '5.0.0-alpha.3'
end

更新高版本的CocoaPods

如果出现
ERROR: While executing gem ... (OpenSSL::SSL::SSLError)
hostname "upyun.gems.ruby-china.org" does not match the server certificate

原因: 之前用的ruby镜像源是淘宝的,需要切换成https://gems.ruby-china.org/

在终端输入

$ gem sources —remove https://ruby.taobao.org/

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

接着上面的步骤,重新安装新的版本

# 删除源(这个系统自带的不好用)
$ sudo gem sources -r https://rubygems.org/

# 添加源(以前使用淘宝的镜像,现在也还是淘宝的镜像,只是改成另外的人维护,名字变了)
$ sudo gem sources -a https://gems.ruby-china.org/

# 查看使用的是镜像名称
$ gem sources -l

# 安装
$ sudo gem install -n /usr/local/bin cocoapods (OS X 10.11以前的安装命令行是sudo gem install cocoapods)

报错:如果报以下错误
ERROR: While executing gem ... (Gem::DependencyError) Unable to resolve dependencies: cocoapods requires cocoapods-core (= 1.1.1), cocoapods-downloader (< 2.0, >= 1.1.2), cocoapods-trunk (< 2.0, >= 1.1.1), xcodeproj (< 2.0, >= 1.3.3)
说明Gem版本太低需要更新则执行:
$ sudo gem update --system
执行完成之后再执行安装命令: $ sudo gem install -n /usr/local/bin cocoapods 

# 安装成功之后,查看是否是最后版本
$ pod --version
pod 升级应该如下:
  $ sudo gem update --system  //首先更新gem
  $ gem sources --remove https://rubygems.org/
  $ gem sources -a http://ruby.taobao.org/
  $ gem sources -l
  $ sudo gem install cocoapods // 安装cocoapods
       
        //注意:
        安装CocoaPods:
        OS X 10.11以前,在终端输入以下命令:
         sudo gem install cocoapods

       OS X 10.11以后,在终端输入以下命令:
        sudo gem install -n /usr/local/bin cocoapods)

  $ pod setup
执行完上述过程,就算升级成功

*降低当前cocodPod版本

//1.卸载当前版本
sudo gem uninstall cocoapods
//2.下载旧版本
sudo gem install cocoapods -v 0.25.0

安装指定的版本

//OS X 10.11以前
sudo gem install cocoapods --version 1.1.1

//OS X 10.11以后
sudo gem install -n /usr/local/bin cocoapods --version 1.1.1

iOS 最新版 CocoaPods 的安装流程 【2018年3月20日】

【引用】http://blog.csdn.net/skylearn/article/details/50889430

[帮助巨大]https://blog.csdn.net/qtds8810/article/details/50510910

1.移除现有Ruby默认源
$gem sources --remove https://rubygems.org/

2.使用新的源
$gem sources -a https://gems.ruby-china.org/

3.验证新源是否替换成功
$gem sources -l

4.安装CocoaPods

//****************全新安装前,先检查是否有安装残留****************//

(a) 如果之前装过cocopods,最好先卸载掉,卸载命令:
$ sudo gem uninstall cocoapods
(b) 先查看本地安装过的cocopods相关东西,命令如下:
$ gem list --local | grep cocoapods
会显示如下:
cocoapods-core (0.39.0)
cocoapods-downloader (0.9.3)
cocoapods-plugins (0.4.2)
cocoapods-search (0.1.0)
cocoapods-stats (0.6.2)
cocoapods-trunk (0.6.4)
cocoapods-try (0.5.1)
然后逐个删除吧:
$ sudo gem uninstall cocoapods-core

//***********************************************************//

(1) $sudo gem install cocoapods 备注:苹果系统升级 OSX EL Capitan 后改为$sudo gem install -n /usr/local/bin cocoapods

5.设置pod仓库
   pod setup
6.测试
【如果有版本号,则说明已经安装成功】
pod --version

7.利用cocoapods来安装第三方框架

    01 进入要安装框架的项目的.xcodeproj同级文件夹

    02 在该文件夹中新建一个文件Podfile

    03 在文件中告诉cocoapods需要安装的框架信息

        a.该框架支持的平台

        b.适用的iOS版本

        c.框架的名称

        d.框架的版本

8.安装

podinstall --no-repo-update

podupdate --no-repo-update


安装错误

Setting up CocoaPods master repo 
[!] /usr/bin/git clone [https://github.com/CocoaPods/Specs.git](https://github.com/CocoaPods/Specs.git) master –depth=1 
Cloning into ‘master’… 
error: RPC failed; result=18, HTTP code = 200 
fatal: The remote end hung up unexpectedly 
fatal: early EOF 
fatal: index-pack failed
  • 原因说明:
    我们的项目由于时代久远,所以导致整个项目比较复杂庞大。出现这种错误,就是因为curl的postBuffer默认值太小的原因,重新在终端配置一下这个值就可以了。
解决方案:
$  git config --global http.postBuffer 524288000
$  git config --list

实际是:若输出 http.postbuffer=24288000, 就 够用了

相关文章

网友评论

本文标题:CocoaPods错误&&相关

本文链接:https://www.haomeiwen.com/subject/toegdttx.html