美文网首页iOSiOS Developer
创建 CocoaPods 私有库

创建 CocoaPods 私有库

作者: MangK | 来源:发表于2017-03-31 00:08 被阅读215次

    一、创建私有库

    1.创建 github 仓库
    屏幕快照 2017-03-30 下午10.45.49.png
    2.创建私有 Spec Repo

    先来说第一步,什么是 Spec Repo ?他是所有的Pods的一个索引,就是一个容器,所有公开的 Pods 都在这个里面,他实际是一个 Git 仓库 remote 端在 GitHub 上,但是当你使用了 Cocoapods 后他会被clone到本地的 ~/.cocoapods/repos 目录下,可以进入到这个目录看到官方的 Spec Repo , 即 master 文件夹

    3.创建 iOS Cocoapods 工程项目

    如果已有工程文件可需要自行创建 .podspec 文件,并进行编辑(操作应该和创建新的工程差不多,我还没研究 _)。建议用下边的方法创建新的工程项目,因为它为我们创建了,依赖文件,会少走很多坑(如果你感觉自己很diao,当我没说)

    执行如下命令,即可创建

    pod lib create KYSIOSShared
    
    
    创建项目

    其中5个问题分别为:工程语言 | 是否需要Demo | 测试框架 | 是否需要view测试 | 工程前缀

    4. 配置.podspec文件

    库文件添加完成后,我们需要配置 .podspec 文件 ,如何配置请 Baidu Google

    .podspec文件
    5. 执行 pod update

    当你向 Pod 添加了新文件或更新 .podspec 的版本都需要进入 Example 目录,执行 pod update 更新一下工程,执行完它,Pod/Classes中目录的文件会自动添加到工程中

    6. 验证 .podspec 配置文件

    在工程目录下执行如下命令

    pod lib lint
    
    验证成功
    7. 添加到远端仓库

    通过 Cocoapods 创建的项目,就是用 git 管理的。接下来我们需要将项目推到我们的私有仓库

    执行如下命令

    git add .
    git commit -s -m "first push"
    git remote add origin https://github.com/jackkang0401/KYSIOSShared.git           
    git push origin master  
    
    
    8. 添加版本控制的项目 tag 号

    执行如下命令

    git tag -m "first tag" 0.1.0
    git push --tags
    
    
    9. 本地测试 .podspec 文件
    ① 配置 Podfile 文件
    Podfile
    ② 执行 pod install
    安装成功
    10. 提交私有仓库
    ① 执行如下命令

    KYSIOSShared(本地repo名称),KYSIOSShared.podspec(配置文件路径)

    pod repo push KYSIOSShared KYSIOSShared.podspec
    
    
    ② 测试私有库是否创建成功
    配置Podfile 安装成功 测试项目目录
    ③ 注意事项

    执行 pod install 可能会遇到如下问题,我的解决方案是删除 Assets 与 Classes 目录,库文件移到其他目录(我换成功了Example/Pod/KYSObjCShared/),并配置 .podspec 文件。修改完成后需要进入Example/目录 重新执行 pod update,重走一遍流程

    Analyzing dependencies
    [!] An unexpected version directory `Assets` was encountered for the `...` Pod in the `...` repository.
    
    修改配置文件 更改完的项目的目录结构

    二、 版本升级

    1. 添加新的库文件,修改 .podspec 配置文件

    创建 KYSPodUpdateVersion 文件 修改配置文件

    2. 进入Example目录,执行 pod update

    更新成功

    3.验证 .podspec 配置文件

    执行如下命令

    pod lib lint
    
    
    验证通过

    4. 提交到远端仓库

    执行如下命令

    git add .
    git commit -m "update version 0.1.1"
    git pull origin master
    git push origin master
    
    

    5.添加新的 tag 号

    执行如下命令

    git tag -m "first tag" 0.1.1
    git push --tags
    
    
    • 注意:如果担心出问题最好先进行一下本地验证

    6.更新私有仓库

    ① 执行如下命令
    pod repo push KYSIOSShared KYSIOSShared.podspec
    
    
    更新成功
    ② 进入之前的测试项目执行 pod update 命令
    KYSPodUpdateVersion文件已加入 ^_^

    三、添加子模块

    过程和版本升级是一样的,就是配置 .podspec 文件稍微复杂一点

    ① 私有库目录结构
    子模块目录结构
    ② .podspec 配置文件
    .podspec 配置文件
    # subspec之间也可以相互依赖
    # KYSIOSShared为父仓库名,KYSSubspec1为子仓库名称
    s2.dependency 'KYSIOSShared/KYSSubspec1'
    
    ③ 执行 pod update
    更新结果

    四、总结

    从零了解到私有库创建成功,用了大约3天的时间。这期间也入了跟多坑,也查阅了很多资料,觉得下边的两个链接学的相对好一些,可以参考一下。在这里遇到的最大的一个坑就是前边说道的关于 Assets、Classes 目录的问题,卡了大约1天多,最后换了库文件的路径才得到解决,如果大家有更好的方案或是文章哪里不对,欢迎您的留言 *_^

    五、参考资料

    相关文章

      网友评论

        本文标题:创建 CocoaPods 私有库

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