https://github.com/xuyushiguang/HJSpecs.git
https://github.com/xuyushiguang/HJPodTestLib.git
查看repos
cd ~/.cocoapods/repos
创建spec索引
$ pod repo add HJSpecs https://github.com/xuyushiguang/HJSpecs.git
查看创建的repos
pod repo list
创建模板(我们的组件)
$ pod lib create HJPodTestLib
创建完之后把我们的组件从文件夹中拖入到pods中的Development pods文件夹中,然后再引用
保存然后和远程库关联,我是用sourcetree直接克隆到本地进行关联的,
git add .
git commit -s -m "Initial Commit of Library"
git remote add origin https://github.com/xuyushiguang/HJPodTestLib.git
git push origin master
创建tags,很重要,(后面的搜索这个库都是用tag来搜索)
git tag -m "第一版" 0.1.0
git push --tags
修改podspec文件,
s.ios.deployment_target = '8.0' 这个是我们的库支持的最低版本
s.source_files = 'HJPodTestLib/Classes/**/*' 这个就是我们的组件文件路径,很重要,不能搞错了,我是这样’HJPodTestLib/Classes/**/*.{h,m}'
验证podspec文件是否正确
pod lib lint
最后一步
提交podspec到私有spec repo
pod repo push HJSpecs HJPodTestLib.podspec
到这里就完成了,
接下来测试我们的库是否可用
pod search HJPodTestLib
-> HJPodTestLib (0.1.0)
HJPodTestLib.
pod 'HJPodTestLib', '~> 0.1.0'
- Homepage: https://github.com/OldGhost366/HJSpecs.git
- Source: https://github.com/OldGhost366/HJPodTestLib.git
- Versions: 0.1.0 [HJSpecs repo]
可以使用。
然而当我们直接使用的时候会出问题,
报错 [!] Unable to find a specification for `HJPodTestLib`
我的解决办法是在podfile文件添加source路径,
source 'https://github.com/xuyushiguang/HJSpecs.git'
source 'https://github.com/CocoaPods/Specs.git'
target 'PodTest' do
platform :ios, '8.0'
pod 'HJPodTestLib', '~> 0.1.0'
pod 'AFNetworking'
end