美文网首页iOS开发资料收集区cocoapods创建私有库二进制方案
CocoaPods私有库(含静态库)建立步骤跟注意事项

CocoaPods私有库(含静态库)建立步骤跟注意事项

作者: 天明天 | 来源:发表于2018-10-15 10:38 被阅读32次

    随着项目功能的不断添加,工程的复杂度不断加深,各个功能模块间的解耦显得尤为重要,模块化开发应运而生,而对CocoaPods使用的熟练程度就显得尤为重要。
    此文主要是写一下私有库的主要建立步骤。

    1. 首先搞清楚 Spec 仓库跟代码地址仓库的区别,然后分别创建。
    • 建立Spec仓库。在Git服务上建立一个私有仓库,不需要README.md的初始化,用于存储创建好的***.podspec文件。
    • 本地添加远程索引仓库。
      在此之前你可以在终端输入
    pod repo
    
    查看本地已经建立的索引仓库。 屏幕快照 2018-10-15 上午9.32.35.png

    这个master就是CocoaPods在本地建立的远程索引仓库。建立远程索引仓库的方法是:

    终端输入 pod repo add 仓库名 仓库SSH(HTTPS)地址 来添加一个远程索引仓库
    创建完成之后,可以pod repo 一下,查看是否创建成功。

    2. 创建一个私有的代码仓库。这个仓库用来存放你的代码。
    • 首先在本地创建一个新的文件夹, 用来配置私有代码库。cd到此文件目录下,输入指令创建一个git本地仓库

    pod lib create 仓库名

    1321364-47c842854df68abd.png

    按照步骤完成初始化。

    • 打开Example 文件夹下的***.xcworkspace工程,然后删除README.md文件,目的是可以让系统可以同步podExample工程的 ***.podspec文件。
    3. 添加代码到你刚刚初始化完成的工程中。

    这里需要注意目录结构

    屏幕快照 2018-10-15 上午9.57.02.png 要把代码添加到Classes文件下,然后到Example下 pod 工程 add此文件夹到工程中。注意是Add到这里。 屏幕快照 2018-10-15 上午10.01.20.png
    • 完成代码添加以后,cd到含有***.podspec的目录下 屏幕快照 2018-10-15 上午10.03.36.png
    pod install
    

    此时拖入工程的代码文件就可以正常使用了, 此时使用的是本地私有库。

    4. 打开测试工程, 配置podspec文件。关于podspec 的书写在我的另一片文章介绍过了可以查看 iOS cocoaPods 创建私有库时podSpec的书写这里不再赘述。

    特别注意的地方:
    如果是自己封装的静态库,如.a文件,需要在前面加上前缀lib否则系统会找不到你的文件,从而报错library not found错误。切记 切记

    5.验证podspec文件,cd到此目录下,
    pod spec lint  --allow-warnings
    

    完成远程验证。--allow-warnings是允许存在警告的意思。完成验证后上传到Git仓库,打上标签tag值。

    6.把***.podspec文件上传到你的私有 spec仓库。
    • cd到此目录下,

    执行 pod repo push 索引库名 podspec文件名

    索引库名 : 就是 你在上面 创建的私有索引库。可以 pod repo 查看一下。
    至此完成私有库的创建。之后你可以在终端pod search 私有库名称查看,如果搜索不到请尝试清空cocoapods缓存目录

    rm ~/Library/Caches/CocoaPods/search_index.json
    

    然后在执行pod search *** 就可以了。

    7.使用私有库。由于是私有仓库,如果你的小伙伴要使用,记得给他添加访问权限。使用方式编辑podfile文件,添加私有库地址: 屏幕快照 2018-10-15 上午10.35.24.png pod install完成。

    参考文章:
    https://www.aliyun.com/jiaocheng/352443.html

    相关文章

      网友评论

        本文标题:CocoaPods私有库(含静态库)建立步骤跟注意事项

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