zoukankan      html  css  js  c++  java
  • CocoaPods:管理Objective-c 程序中各种第三方开源库关联

    在我们的iOS程序中,经常会用到多个第三方的开源库,通常做法是去下载最新版本的开源库,然后拖拽到工程中。

          但是,第三方开源库的数量一旦比较多,版本的管理就非常的麻烦。有没有什么办法可以简化对第三方库的管理呢?有!在使用SDWebImage这个第三方库的时候,我在学习如何将进度展现时,看到有人提到用CocoaPods(http://cocoapods.org/,需FQ) 来管理第三方开源库。

          CocoaPods是管理Objective-c 程序中各种第三方开源库关联非常棒的方式,只要安裝好 CocoaPods,在自己程序的根目录下建立一份 Podfile 文字,在里面说明要使用哪些套件, CocoaPods 就会帮忙你搞定所有套件的相依性。

    那现在我们学习如何使用CocoaPods吧。

    安装

    CocoaPods 是一个 Ruby 的 Gem,所以只要在 Terminal 下达安裝的指令:

    1
    2
    gem install cocoapods
    pod setup

    注:执行代码的时候你可能会觉得没反应,这里是需要时间的,耐心等待一下吧。

           这样就安装好了,检查一下是否安装好了没,随便搜索一个第三方的开源库:

    1
    pod search SDWebImage

      结果如下图所示:

          没有报错误或其他什么的,说明CocoaPods安装成功。

          好了,我们再看看怎么使用。

     使用

     比如你想使用SDWebImage这个开源库,你可以用上图的命令:pod search SDWebImage来搜索当前有多少个SDWebImage的版本及每个版本的相关信息。然后选择你需要的版本,将其添加到Podfile文件中。

          将开源库添加到Podfile文件中有两种方法:

    方法一(手动建Podfile文档):

    • 你在你工程的根目录下新建一个名为Podfile的文本文档;
    • 然后将上图中红色方框内的文字(pod 'SDWebImage', '~> 3.4')复制进去;
    • 保存,然后去掉文本文档的后缀名(有后缀会发生发错误,亲测)。
    方法二(命令行建Podfile文档):
    • 首先定位到你工程的根目录去(因为文档要建在这里);
    • 然后编辑Podfile文档(Podfile存在则编辑,没有就会新建),将将上图中红色方框内的文字(pod 'SDWebImage', '~> 3.4')复制进去;
    • 保存。
          命令行如下所示:
    1
    2
    cd '你的工程根目录'  #不要引号 ,打开你的根目录
    vi Podfile                #打开并开始编辑

       如下图所示:

           编辑完成之后按Esc键退出编辑,然后输入‘:wq’保存并退出。
           现在你可以在项目中安装依赖关系了:
     
    1
    pod install

     Tips:如果你引用的库很大,不需要所有的文件,可以这样写:

    1
    pod 'Nimbus/Core'

       安装成功以后,你的工程跟木下会产生一个这样的文件:

    确保以后就用这个文件来打开你的工程就行了。

    创建一个pod
     
        (摘自CocoaPods官网:http://cocoapods.org)
     
          有时CocoaPods没有你需要的pod资源,但是幸运的,你可以很容易的创建一个:
     pod spec create Peanut
     edit Peanut.podspec
     pod spec lint Peanut.podspec
          When you’re done, please create a ticket and upload the pod. You can also fork theCocoaPods specs GitHub repository and send a pull request. We really love contributions!
     
    补充:
    如何在cocoapods中使用更新的pod:
    http://www.cnblogs.com/procoder/archive/2013/01/15/how-to-get-updated-version-of-pods-on-cocoapods.html
  • 相关阅读:
    Benelux Algorithm Programming Contest 2016 Preliminary K. Translators’ Dinner(思路)
    Benelux Algorithm Programming Contest 2016 Preliminary Target Practice
    Benelux Algorithm Programming Contest 2016 Preliminary I. Rock Band
    Benelux Algorithm Programming Contest 2016 Preliminary A. Block Game
    ICPC Northeastern European Regional Contest 2019 Apprentice Learning Trajectory
    ICPC Northeastern European Regional Contest 2019 Key Storage
    2018 ACM ICPC Asia Regional
    2018 ACM ICPC Asia Regional
    Mybatis入库出现异常后,如何捕捉异常
    优雅停止 SpringBoot 服务,拒绝 kill -9 暴力停止
  • 原文地址:https://www.cnblogs.com/jgCho/p/4953022.html
Copyright © 2011-2022 走看看