创建 CocoaPods 私有库

一、创建私有库

1.创建 github 仓库
创建 CocoaPods 私有库_第1张图片
屏幕快照 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

创建 CocoaPods 私有库_第2张图片
创建项目

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

4. 配置.podspec文件

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

创建 CocoaPods 私有库_第3张图片
.podspec文件
5. 执行 pod update

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

6. 验证 .podspec 配置文件

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

pod lib lint
创建 CocoaPods 私有库_第4张图片
验证成功
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 文件
创建 CocoaPods 私有库_第5张图片
Podfile
② 执行 pod install
创建 CocoaPods 私有库_第6张图片
安装成功
10. 提交私有仓库
① 执行如下命令

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

pod repo push KYSIOSShared KYSIOSShared.podspec

② 测试私有库是否创建成功
创建 CocoaPods 私有库_第7张图片
配置Podfile
创建 CocoaPods 私有库_第8张图片
安装成功
创建 CocoaPods 私有库_第9张图片
测试项目目录
③ 注意事项

执行 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.
修改配置文件
创建 CocoaPods 私有库_第10张图片
更改完的项目的目录结构

二、 版本升级

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

创建 CocoaPods 私有库_第11张图片
创建 KYSPodUpdateVersion 文件
修改配置文件

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

创建 CocoaPods 私有库_第12张图片
更新成功

3.验证 .podspec 配置文件

执行如下命令

pod lib lint

创建 CocoaPods 私有库_第13张图片
验证通过

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

创建 CocoaPods 私有库_第14张图片
更新成功
② 进入之前的测试项目执行 pod update 命令
创建 CocoaPods 私有库_第15张图片
KYSPodUpdateVersion文件已加入 ^_^

三、添加子模块

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

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

四、总结

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

五、参考资料

  • 1 . 使用Cocoapods创建私有podspec - GeekerProbe
  • 2 . iOS:最详细的创建CocoaPods私有库教程 - 当天真遇到现实 - 博客园

你可能感兴趣的:(创建 CocoaPods 私有库)