这里介绍下如何让自己所整理的东西可以让pod引入,主要内容很简单,但是请注意步骤和细节,胆大心细跟我走~
1.New repository
首先在Github上New一个repository。这里注意,在新建的时候,要添加license。还有最好创建README,README支持Markdown语法,用于说明自己的库很方便。 在这安利一个软件 Typora
2.将Demo和私有库上传到Github上
我们需要先创建一个本地库,然后将代码拉下来,将自己的库和Demo添加上,并在README文件中用Markdown语法做出简单的说明。
注意:这个时候是没有.podspec文件的
3.创建.podspec文件
问题基本上出现在这一步,其中很大一个原因是路径问题,在这希望能给各位做一个参考
这里执行命令创建.podspec文件
pod spec create **** // 你的库名称
Pod::Spec.new do |s|
s.name = "TSCategory" //私有库的名称
s.version = "0.0.2" //版本号
s.summary = "all kinds of categories for iOS develop" //概述
s.description = <<-DESC
this project provide all kinds of categories for iOS developer //描述
DESC
s.homepage = "https://github.com/TonyShng/TSCategory" //git上的地址
s.license = "MIT" //许可证
s.license = { :type => "MIT", :file => "LICENSE" } //许可证
s.author = { "TonyShng" => "wangzhe92824@qq.com" } //作者名以及邮箱
s.platform = :ios
s.platform = :ios, "7.0"
s.source = { :git => "https://github.com/TonyShng/TSCategory.git", :tag => "0.0.2" } //这个是git上 releases的代码,以后每次版本升级,都会传到这里
s.source_files = "TSCategory", "TSCategory/**/*.{h,m}" //路径 前面的表示私有库名,后面表示私有库中的内容
s.exclude_files = "Classes/Exclude"
s.public_header_files = "TSCategory/UIKit/TS_UICategories.h", "TSCategory/**/*.h" //前面表示使用私有库要引入的头文件,后面表示头文件中所引用的头文件的路径 ~~很绕,下面有图
s.requires_arc = true //支持ARC
end
这个路径希望能够对照着来进行修改,在没有提交.podspec文件前都可以修改,但是提交之后,修改之后需要修改版本号,才能重新提交。
4.验证podspec文件并提交
pod lib lint ****.podspec // .podspec文件名
如果出现
-> ****(0.0.1) // 库名
**** passed validation. // 库名
说明本地验证通过,有警告的话是不要紧的,可以通过命令屏蔽警告
pod lib lint --allow-warnings
如果出现Error但是提示信息不足,可以添加--verbose
以获取更多错误信息
pod lib lint --verbose
5.上传podspec
这一步需要指定tag
git tag -m"描述" "0.0.1" //
git push --tags // 上传到git releases中
6.注册Cocoapods账号
pod trunk register 邮箱地址 ‘用户名’ —description='描述信息'
黄色提醒则表示已经发送验证码到邮箱,这是需要到邮箱点击链接激活即可。这样便成功注册了Cocoapods的账号。
pod trunk me // 验证注册是否成功
7.上传代码到CocoaPods
pod spec lint // 检测文件格式的有效性 有警告,可以使用 —allow-warnings忽略
这里我之前有遇到路径问题,但是本地检测即 pod lib lint 没有问题。 这里有解决方式 .podspec error - source_files` pattern did not match any file
如果没有问题的话
pod trunk push ****.podspec —allow-warnings
等上一会,结果就会出现
当这个出现的时候,表示已经上传成功!恭喜。
然后这个时候让我们来搜索一下吧~
pod search ****
等等,为啥没有???
附上最后一个命令
rm ~/Library/Caches/CocoaPods/search_index.json
然后在搜索一次,应该就可以了~
参考资料
http://www.jianshu.com/p/d7d1942dd3f1
http://www.cnblogs.com/zhanggui/p/6003481.html
http://www.cnblogs.com/wengzilin/p/4742530.html