组件化开发准备 一

如何将自己的项目发布到Cocoapods上

具体分为以下四个步骤

1. 创建 .podspec 文件

2. 验证 github 仓库

3. 登录注册 cocoapods

4. 发布到 cocoapods

创建.podspec文件

注册GitHub仓库

由于cocoapods都托管在GitHub上,所有的pods也都依赖github,所以我们在创建.podspec文件之前,我们要现在我们的github上新建仓库

这里说明下add a license 这个选项,一般来说我们建立自己的仓库的时候一般不会勾选这个东西,但是正规仓库都应该有一个license文件。而且pods依赖库也对这个文件要求更严,所以必须要有,这里我们选择MIT类型

执行 git clone 到本地

我们在本地新建一个文件夹,比如我在桌面上建立pods文件夹,然后在终端cd到我们的文件夹执行下载命令

git clone https://github.com/Smalldevelopment/JJPods.git

然后我们在该目录下放入我们要上传的文件,如下图

创建.podspec文件

cd到pods/JJpods,在pods/JJpods文件夹在执行

pod spec create JTest

执行后pods/JJPods文件夹下回创建JTest.podspec文件
然后打开它,如果用自带的文本打开它可能会出现单双引号问题,这里我们用sublime Test 来打开它,然后直接修改吧,不想一个个修改就直接粘贴复制吧

Pod::Spec.new do |s|
s.name = "JJPods"
s.version = "1.0.0"
s.summary = "a test"
s.description = "A test"
s.homepage = "https://github.com/Smalldevelopment/JJPods.git"
s.social_media_url = "https://github.com/Smalldevelopment/JJPods.git"
s.license= { :type => "MIT", :file => "LICENSE" }
s.author = { "JJ" => "you@163.com" }
s.source = { :git => "https://github.com/Smalldevelopment/JJPods.git", :tag => s.version }
s.source_files = "JTest/*.{h,m}"
s.ios.deployment_target = '6.0'
s.frameworks = 'UIKit'
s.requires_arc = true

end

修改后,我们来本地验证下,在终端执行

pod lib lint

如果正确会这样显示

如果出现错误,按照提示修改下错误
后天我们再把代码上传到github上,注意这里我们上传要打一个tag

git tag 1.0.0

这里的1.0.0就是我们在podspec中填写的版本号,然后我们在验证远程仓库中的podspec文件是否正确,因为上传到cocoapods最终验证的还是我们github上的文件

pod spec lint