使用总结:
一. 创建索引库
1.创建远程索引库
在远程创建一个索引库(码云),私有的
2.创建本地索引库,并与远程索引库关联
pod repo add <本地索引库名称> <远程索引库地址.git>
//查看是否创建成功
pod repo
二.创建远程代码库
1.在远程创建一个代码库(码云),私有的
2.创建<模板测试工程>(也就是组件)
pod lib create <组件名> //会生成spec文件 和 测试工程
//然后,将<组件>拷贝到 Classes文件夹中即可,然后执行, pod install 此时, 打开测试工程,可以进行一些修改操作
2.1 也可以直接创建spec 文件 ,然后配置
//pod spec create + 私有库名字 //直接生成spec 文件
3.修改 spec 文件
Pod::Spec.new do |s|
#私有库名称
s.name = "xsspec"
#版本, 也是tag
s.version = "0.0.1"
#摘要
s.summary = "xsbase"
#描述,需比摘要更详细
s.description = 'xsbase可展开收缩'
#项目主页地址(无.git后缀)
s.homepage = "https://gitee.com/DaXueShan/xsbase"
#开源许可类型
s.license = "MIT"
#s.license = { :type => "MIT", :file => "FILE_LICENSE" }
#作者
s.author = { "xueshan1" => "[email protected]" }
#最低支持版本
s.platform = :ios, "9.0"
#仓库路径(有.git后缀) 项目需要打tag
s.source = { :git => "https://gitee.com/DaXueShan/xsbase.git", :tag => "#{s.version}" }
#资源文件路径(相对于.git目录开始的, **表示匹配所有子目录, *表示匹配所有文件, 如SFString1/*.{h,m})
s.source_files = "xsbase/*"
#依赖的库,要填写s.dependency
#s.dependency "JSONKit", "~> 1.4"
#s.dependency "Masonry", "~> 1.0.0"
end
4.将<模板测试工程> 提交到 1 创建的远程代码库, 通过 git 操作
git push
//打标签
git tag 0.1.0 (与. spec 中的 s.version 相同)
git push --tags
三.提交 podspecspec 到本地索引库 (它会自动同步到远程)
验证spec:
pod lib lint --verbose --use-libraries --allow-warnings
--allow-warnings (验证时允许有警告)
--verbose
(显示检查编译的详细信息)
--use-libraries (podspec文件中依赖了静态库造成的验证不通过,可加上这个参数)
提交spec :
pod repo push <XXspec本地索引库名称> <XXTools.podspec spec 文件名> --verbose --allow-warnings
验证过程出现的 Error
- ERROR | [iOS] unknown: Encountered an unknown error (Could not find a `ios` simulator ... 解决方案:
升级cocoapods即可解决 sudo gem install cocoapods
四.集成到项目中
在 podfile 文件中需要制定组件的源
source '第一步创建的远程索引库的地址.git' . 注意是spec库的地址,而不是项目仓库的地址
source 'https://gitee.com/DaXueShan/XSRemoteSpec.git' platform :ios,'10.0' target 'MainProject' do pod 'XSBaseZujian','0.1.0' end
参考:
http://www.cnblogs.com/hs-funky/p/6780203.html
http://www.jianshu.com/p/4b63dfbd8be7
http://www.code4app.com/blog-865196-47193.html . 上传到公共github仓库
https://blog.csdn.net/donnydn/article/details/79823566 推荐