Cocoa pods集成和错误提示

一、传送门

  • 借用别人的传送门,便于自己简书下次查看而已!

二、准备工作:

  1. 为了安全起见,执行命令sudogem uninstall cocoapods,卸载原有的CocoaPod
  2. 执行命令sudo geminstall -n /usr/local/bin cocoapods来重新安装cocoapod,或者参照下面的方法重装
  3. 如果没有权限执行pod,执行命令sudochmod +rx /usr/local/bin/,赋予/usr/local/bin给予执行与读取权限

三、安装和使用(iOS最新版CocoaPods的安装流程 )

  1. 移除现有Ruby默认源
    $gem sources --removehttps://rubygems.org/
  2. 使用新的源(淘宝的不用了,用ruby.china的)
    $gem sources -ahttps://ruby.taobao.org/
    $gem sources -a https://gems.ruby-china.org/
  3. 验证新源是否替换成功
    $gem sources -l
  4. 安装CocoaPods
    $sudo gem install cocoapods

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

  1. 设置pod仓库
    pod setup
  2. 测试
    pod --version

【如果有版本号,则说明已经安装成功】

  1. 更新gem
    $sudo gem update --system
  2. 新建工程,并在终端用cd指令到文件夹内
    $pod search AFNetworking
  3. 新建文件Podfile文件
    $vim Podfile
    可以直接打开文件`open Podfile`,也可以进入项目找到Podfile文件
    写入以下内容并保存小提示:(终端vim文件按i可编辑,esc退出编辑,:wq可保存退出)
    platform:ios,'8.0'
    use_frameworks!
    target ‘项目名称’ do
            pod 'AFNetworking', '3.1.0'
    end
  1. 导入第三方库
    $pod install
    podinstall --no-repo-update 忽略更新Cocoapods安装
    podupdate --no-repo-update 忽略更新Cocoapods更新
  2. 退出终端

四、常见错误总结

  1. 权限问题

错误语句内容:You don't have write permissions for the /Library/Ruby/Gems/2.3.0 directory.这是因为要执行这某些必须有管理员的权限(比如更新软件),比如更新cocoapods时报错

解决方法:加上sudo即可,sudo是获取系统权限的方法,但是要输入密码,gem update --system改为sudo gem update --system

WCT-MAC:~ wct$ gem update --system

Updating rubygems-update

ERROR: While executing gem ... (Gem::FilePermissionError)

You don't have write permissions for the /Library/Ruby/Gems/2.3.0 directory.

WCT-MAC:~ wct$ sudo gem update --system

Password:

Updating rubygems-update Fetching: rubygems-update-2.7.3.gem (100%)

2.安装两个Xcode引起的问题

错误语句内容:Unable to add a source with url 'https://github.com/Cocoapods/Specs.git' named ' master-1' You can try adding it manually in '/!.cocoapods/repos' or via ' pod repe add'

解决方法:sudo xcode-select -switch + 当前Xcode的版本

3.最新的书写格式引起Target不符合

错误语句内容:The dependency 'xxxx' is not used in any concrete target

解决方法:改书写格式为下面这种,途中的”Together”就是你项目的Target

例如:

platform :iOS,'8.0'

#use_frameworks!个别需要用到它,比如reactiveCocoa

target ‘Together’ do

      pod 'AFNetworking' , '~>2.6'

      pod 'SwiftyJSON','~>2.3' 

end

4.导入的第三方库,#import报错

  • 选择target(就是左边你的工程target)——BuildSettings ——search Paths 下的 User Header Search Paths
  • 双击后面的空白区域,出现下面的图,并且点击“+”号添加一项:并且输入:“$(PODS_ROOT)”(没有引号),选择:recursive(会在相应的目录递归搜索文件)
  1. 这里只介绍我自己学习中碰到过的,更多错误,广大开发者都已经有解决方案了,这里给出传送门
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容