欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

iOS创建CocoaPods公有库

程序员文章站 2022-04-09 19:40:48
...

废话不多说,直接上重点!创建一个公有的CocoaPods库步骤如下:

1.首先在Github上创建一个空的仓库

iOS创建CocoaPods公有库

2.把空项目下载到本地

iOS创建CocoaPods公有库

3.在本地项目里创建podspec文件,在项目中使用公有库,主要就是依赖这个文件去检索,使用终端进入到工程目录下, 然后执行如下命令:

pod spec create JYUtils

这里需要注意的是 “JYUtils” 是你的库的名字,执行完成后会在工程下生成一个叫”JYUtils.podspec”的库文件。

4.编辑”JYUtils.podspec”文件,该文件默认生成的东西有很多,但大多是可以注释掉的,必须的基本就是下面这些,照着填写就行,编辑完成后记得保存

Pod::Spec.new do |s|
  s.name         = "JYUtils"
  s.version      = "0.0.1"
  s.summary      = "JYUtils是一个快速开发工具包"
  s.description  = "JYUtils是一个开发工具包,包含了一些控件封装,工具类等,可加快开发速度。"
  s.homepage     = "https://github.com/yaoliangjun/JYUtils"
  s.license      = "MIT"
  s.author             = { "yaoliangjun" => "aaa@qq.com" }
  s.platform     = :ios
  s.source       = { :git => "https://github.com/yaoliangjun/JYUtils.git", :tag => "#{s.version}" }
  s.source_files  = "Classes", "Classes/**/*.{h,m}"
  s.exclude_files = "Classes/Exclude"
end

5.验证库是否有错误和警告,命令如下:

pod lib lint JYUtils.podspec

每个人遇到的错误可能都不太一样,按照提示解决即可

iOS创建CocoaPods公有库

如果出现一些警告,可以使用如下命令忽略警告:

pod lib lint --allow-warnings

直到出现校验通过才行

JYUtils passed validation.

6.在Github上创建一个release版本,tag版本号最好和spec文件里面填写的tag版本号一致

iOS创建CocoaPods公有库

7.注册CocoaPods库账号,执行命令行:

pod trunk register 913736093@qq.com 'yaoliangjun' --description="Create my first CocoaPods lib."

上面需要填写的第一个是**收件邮箱,第二个是Github用户名,第三个是描述,可不填写。命令执行成功后,CocoaPods官方会发送一个验证邮件到上面填写的那个邮箱里,打开邮件中的验证链接后如下:

iOS创建CocoaPods公有库

8.检查是否注册成功,命令如下:

pod trunk me

能查看到自己的库信息就算注册成功了

iOS创建CocoaPods公有库

9.再次校验库是否有错误,命令如下:

pod lib lint JYUtils.podspec --allow-warnings

10.把自己的库文件推送到CocoaPods远程仓库,命令如下:

pod trunk push JYUtils.podspec --allow-warnings

iOS创建CocoaPods公有库

以上两个步骤如果没有报错,则代表自己的库已经成功发布到CocoaPods远程仓库上了

11.搜索自己的库,命令如下:

pod search JYUtils

如果库无法搜索到,报错如下:

Unable to find a pod with name, author, summary, or descriptionmatching 'JYUtils'

这是因为本地仓库没有更新的原因,需要删除本地仓库索引文件,命令如下:

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

重新search一次,更新完成本地库就可以搜索到咯!

iOS创建CocoaPods公有库

PS: “JYUtils”库是我最近的一个项目提取出来的Category工具类,后面会持续更新更多好用的东西,如果觉得好的话可以到Github上给个Start, 谢谢!https://github.com/yaoliangjun/JYUtils