iOS开发的正确姿势iOS日常知识储备程序

发布自己的开源库到Cocoapods

2016-06-28  本文已影响381人  啃手高手

作为一个iOS开发者,Cocoapods是我们再熟悉不过的了。pods上有很多优秀的第三方库,一行代码就可以很方便地使用。既然它这么方便,我们何不上传自己的开源库上去跟大家分享呢?所以,这篇我们来学习下如何把自己的开源库上传到Cocoapods供其他Developer使用。

另外:如果你还不会使用Cocoapods,推荐你看一看我的另一篇文章:cocoapods第三方库管理工具

Podspec描述文件

假设你已经把项目开源到了Git上,记得打上tag(这里是为了方便以后配置描述文件,不强制,但是强烈建议这样做)。

通过下面的命令生成一个spec文件:

pod spec create ZXDatePicker

注意:这个描述文件放在哪里都可以不必放在git库中上传

这个文件的主要内容就在下面:

Pod::Spec.new do |s|
  s.name         = "ZXDatePicker"
  #name:"你的库的名字"
  s.version      = "0.0.6"
  #s.version: "版本号tag"
  s.summary      = "A sample datePicker."
  #s.summary : "该开源库的简单介绍描述"
  s.homepage     = "https://github.com/Goyakod/ZXDatePicker"
  #s.homepage: "你的git主页"
  s.license      = "MIT"
  #s.license : "MIT许可"
  s.author       = { "Goyakod" => "111111111@qq.com" }
  #s.author : { "yourName" => "your email address" }
  s.source       = { :git => "https://github.com/Goyakod/ZXDatePicker.git", :tag => "0.0.6" }
  #s.source : { :git => "开源库的git地址", :tag => "tag版本" }
  s.source_files  =  "ZXDatePicker/**/*.{h,m}"
  #s.source_files:"源文件路径"
  s.framework  = "UIKit"
  #s.framework : "依赖的框架",如果依赖多个就用s.frameworks
  s.platform     = :ios, "7.0"
  #s.platform :平台
end

*关于上面字段填写内容的注意事项:

1.MIT许可证,其实就是一个txt文件,文本内容从https://mit-license.org/里面拷贝模板更改年份和你的名字即可。
2.Sourcefile,这个路径一定要填写正确,这个地址取决于spec文件的当前位置。

验证描述文件

填完上面所有之后,执行命令:

pod spec lint yourPodName.podspec

命令执行完看到yourPodName passed validation.就证明通过了验证。验证未通过会提示有几个Error几个Warnings。仅有Warnings也是通过不了验证的,所以尽量把所有问题解决掉然后来验证。

验证通过后,去到 ~/.cocoapods/repos/master/Specs 目录下,创建自己的库名的文件夹,里面是版本文件夹,放入对应的描述文件。

屏幕快照 2016-06-28 17.15.33.png 屏幕快照 2016-06-28 17.15.39.png

现在你在本机上搜索已经能够找到自己的库了。

CocoaPods Trunk发布

为了让别人也能搜到你的库,还需要进行发布。

注册trunk

执行命令:

 pod trunk register youremail@qq.com  'your name' --description='description'

上面命令执行完之后你的邮箱会受到验证邮件,点击验证即可。

trunk 发布

在包含有.podspec的目录下执行命令:

pod trunk push

该命令会首先验证你本地的podspec文件,之后会上传spec文件到trunk,最后会将你上传的podspec文件转换为需要的json文件。当你在目录下看到json文件时就意味着你的库已经成功上传到了pod上。

屏幕快照 2016-06-28 16.43.31.png

最后

如果你觉得本文还不错,请移步本文案例-ZXDatePicker给个star(不给我也不能拿你怎么样...看心情吧)。

上一篇下一篇

猜你喜欢

热点阅读