让自己写的项目支持Cocoapods管理

时间:2025-01-16 21:37:02

学会使用别人的 Pods 依赖库以后, 你一定对创建自己的依赖库很有兴趣吧,现在我们一起来制作自己的Pods依赖库。

1.创建自己的 github 仓库

让自己写的项目支持Cocoapods管理

上图中标识出了6处地方

  1. Repository name: 仓库名称,这里写上我们的依赖库名字 HJGame ,必填。
  2. Description: 仓库的描述信息,可选。
  3. Public or Private: 仓库的公开性,开源的话选 Public 。 如果是公司内部使用的话这里推荐大家使用私有的仓库,但是 github 的私有仓库是要收费的 $7/month (壕请无视 - -!)。大部分公司都是有自己的git服务器,不过一般只能在公司内网使用,或者可以选择Gitlab,Coding, Bitbucket任意一种。
  4. Initialize: 是否默认创建一个 README 文档,一个完整的库都会有这个说明文档,这里最好勾选一下。不过如果忘记的话也不要紧,后面手动创建也是可以的。
  5. .gitignore: 忽略项文件,记录一些想忽略的文件类型,凡是该文件包含的文件类型, git 都不会将其纳入到版本管理中。看需要选择就行。
  6. license: 正规的仓库都有一个 license 文件, Pods 依赖库对这个文件要求比较严格,需要有这个文件。这里最好让 github 自动创建一个,不过后续手动创建也行。我们这次先使用 MIT 类型的 license

上面各项根据大家需要填写完毕后,点击 Create repository 按钮即可,生成仓库后,复制仓库地址:

让自己写的项目支持Cocoapods管理

2.clone 仓库到本地

打开终端窗口 cd/Desktop ;clone https://github.com/JJloveLL/HJGame.git 下载完成后 通过 pwd 命令查看当前的文件结构如下:

让自己写的项目支持Cocoapods管理

其实还有一个隐藏的 .git 文件,后续我们的所有文件都在这个目录底下进行。

3.向本地仓库中添加创建 Pods 依赖库所需的文件

1)把需要添加Pods依赖库的文件,都移动到当前桌面 HJGame文件夹里;

2)在当前桌面HJGame文件路劲下,创建.podspec文件:

创建这个文件有两种途径:

  1. 复制已有的 podspec 文件然后修改对应的参数。
  2. 执行命令行创建。

我们使用命令行:

pod spec create HJGame

创建出HJGame.podspec 文件后,我们打开可以发现,该文件是 ruby 文件,里面有很多的内容,但是大多数都是我们不需要的,所以我们只需要根据项目的情况保留关键的一些内容就行:

让自己写的项目支持Cocoapods管理
添加完成后保存。

以上所有的步骤都是准备阶段……

现在进去项目阶段

执行命令:

git tag 1.0.0 (版本号)
git add .
git commit -m “提交注释”
git push origin 1.0.0 (tag版本号)

然后验证podspec文件的合法性:

pod spec lint HJGame.podspec (验证合法性)

验证通过如下状态:

让自己写的项目支持Cocoapods管理

但是此处验证一般有两处坑点:(podspec 文件填的不合法)

错误如下:让自己写的项目支持Cocoapods管理

让自己写的项目支持Cocoapods管理

验证通过后执行命令:

git add -A
git push origin master

同步到git仓库里。

通过以上步骤创建Pod库还只能供自己使用,下面会继续讲解如何将其提交到CocoaPods/Specs代码库中,让其他人也可以通过pod install安装我们的开源库。

CocoaPods Trunk发布自己的Pods

在cocoapods使用了trunk之后,CocoaPods 需要0.33以上版本,用 pod --version查看版本,如果版本低,需要更新。

注册Trunk

1、$ pod trunk register orta@cocoapods.org 'Orta Therox' --description='macbook air' ($ pod trunk register 自己邮件地址 '注册用户名' --description='描述')

大家在注册时需要替换成自己的邮箱和用户名,一切顺利的话就会受到一份邮件,点击邮件中的链接后验证一下:

验证过后通过pod trunk me 自己的cocopods注册的信息

让自己写的项目支持Cocoapods管理

当然,如果你的pod是由多人维护的,你也可以添加其他维护者:

$ pod trunk add-owner ARAnalytics kyle@cocoapods.org


上面的工作完成之后,我们就可以开始 trunk push了,执行命令:

pod trunk push

等待几分钟 我们项目就发布到cocopods上了,别人就可以添加使用我们开源库了。

让自己写的项目支持Cocoapods管理

至此我们整个制作自己的开源库的过程就完成了,以后有新版本只需要修改工程根目录下的podspec文件就行了,然后重新执行pod trunk push命令。

最后

最后对这个过程做个总结:

1.开源库发布之后,需要打上tag

2.进入到项目根目录下,创建podspec文件

pod spec create PodName

3.编辑podspec文件中的相关信息,有两个比较重要的地方s.source和s.source_files,可以验证是否有误:

pod spec lint PodName.podspec

4.注册pod trunk

$ pod trunk register orta@cocoapods.org 'Eric_jun' --description='macbook pro'

5.发布到pod trunk

pod trunk push [NAME.podspec]

该命令在包含有.podspec文件的目录下执行

6.更新pod库

pod setup

如果pod trunk push成功后无法pod search到自己的库,可执行该命令。