稀土 2017-12-17
作为一个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" => "[email protected]" } #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文件,文本内容从mit-license.org/里面拷贝模板更改年份和你的名字即可。2.Sourcefile,这个路径一定要填写正确,这个地址取决于spec文件的当前位置。
###验证描述文件填完上面所有之后,执行命令:
pod spec lint yourPodName.podspec
命令执行完看到yourPodName passed validation.就证明通过了验证。验证未通过会提示有几个Error几个Warnings。仅有Warnings也是通过不了验证的,所以尽量把所有问题解决掉然后来验证。
验证通过后,去到 ~/.cocoapods/repos/master/Specs 目录下,创建自己的库名的文件夹,里面是版本文件夹,放入对应的描述文件。
现在你在本机上搜索已经能够找到自己的库了。
#CocoaPods Trunk发布为了让别人也能搜到你的库,还需要进行发布。
###注册trunk执行命令:
pod trunk register [email protected] 'your name' --description='description'
上面命令执行完之后你的邮箱会受到验证邮件,点击验证即可。
###trunk 发布在包含有.podspec的目录下执行命令:
pod trunk push
该命令会首先验证你本地的podspec文件,之后会上传spec文件到trunk,最后会将你上传的podspec文件转换为需要的json文件。当你在目录下看到json文件时就意味着你的库已经成功上传到了pod上。
#最后如果你觉得本文还不错,请移步本文案例-ZXDatePicker给个star(不给我也不能拿你怎么样...看心情吧)。