###废话不多说,直接上重点!创建一个公有的CocoaPods库步骤如下:
###1.首先在Github上创建一个空的仓库
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QJLHN2FY-1572058510605)(https://img-blog.csdn.net/20170619114011873?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFvbGlhbmdqdW4zMDY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
###2.把空项目下载到本地
###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" => "913736093@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
每个人遇到的错误可能都不太一样,按照提示解决即可
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZOY4nWLo-1572058510607)(https://img-blog.csdn.net/20170619120132276?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFvbGlhbmdqdW4zMDY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
如果出现一些警告,可以使用如下命令忽略警告:
pod lib lint --allow-warnings
直到出现校验通过才行
JYUtils passed validation.
###6.在Github上创建一个release版本,tag版本号最好和spec文件里面填写的tag版本号一致
###7.注册CocoaPods库账号,执行命令行:
pod trunk register 913736093@qq.com 'yaoliangjun' --description="Create my first CocoaPods lib."
上面需要填写的第一个是激活收件邮箱,第二个是Github用户名,第三个是描述,可不填写。命令执行成功后,CocoaPods官方会发送一个验证邮件到上面填写的那个邮箱里,打开邮件中的验证链接后如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3kIlXHXW-1572058510608)(https://img-blog.csdn.net/20170619121320996?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveWFvbGlhbmdqdW4zMDY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
###8.检查是否注册成功,命令如下:
pod trunk me
能查看到自己的库信息就算注册成功了
###9.再次校验库是否有错误,命令如下:
pod lib lint JYUtils.podspec --allow-warnings
###10.把自己的库文件推送到CocoaPods远程仓库,命令如下:
pod trunk push JYUtils.podspec --allow-warnings
以上两个步骤如果没有报错,则代表自己的库已经成功发布到CocoaPods远程仓库上了
###11.搜索自己的库,命令如下:
pod search JYUtils
如果库无法搜索到,报错如下:
Unable to find a pod with name, author, summary, or descriptionmatching 'JYUtils'
这是因为本地仓库没有更新的原因,需要删除本地仓库索引文件,命令如下:
rm ~/Library/Caches/CocoaPods/search_index.json
或者是执行命令更新仓库
pod repo update
然后重新search一次,更新完成本地库就可以搜索到咯!
PS: "JYUtils"库是我最近的一个项目提取出来的Category工具类,后面会持续更新更多好用的东西,如果觉得好的话可以到Github上给个Start, 谢谢!https://github.com/yaoliangjun/JYUtils