Cocoapods创建私有Spec
创建一个私有的podspec主要包括如下几步:
1.远程私有Spec Repo的创建
2.创建pod私有库所需要的项目工程文件,并上传到私有库
【Cocoapods创建私有Spec】3.创建pod所对应的podspec文件,并进行验证/测试
4.向私有的Spec Repo中提交podspec
5.使用pod库
6.更新维护podspec
创建私有Spec Repo:
1.先在https://coding.net中创建 ZXFMPrivateLib 项目
2.在终端中执行命令 pod repo add ZXFMPrivateLib https://git.coding.net/sajiner/ZXFMPrivateLib.git
此时在~/.cocoapods/repos目录下就可以看到ZXFMPrivateLib这个目录了
创建pod项目工程文件
1.在终端中执行命令:pod lib create ZXDownloaderLib(此处为工程名)
会出现如下问题:
What language do you want to use?? [ Swift / ObjC ]2.添加远程仓库,执行命令:
Would you like to include a demo application with your library? [ Yes / No ]
Which testing frameworks will you use? [ Specta / Kiwi / None ]
Would you like to do view based testing? [ Yes / No ]
What is your class prefix?
git add .
git commit -m "first commit"
git remote add origin master https://coding.net/u/sajiner/p/ZXDownloaderLib/git(远端仓库)
git push origin master
3.打标签,执行命令:
git tag '0.1.0'(标签版本,一般与.podspec文件中的version版本一致)
验证本地标签:pod lib lint (当出现ZXDownloaderLib passed validation.时验证通过)
推送tag到远端仓库:git push --tags
创建podspec文件:
通过pod lib create ZXDownloaderLib命令创建的项目中已经存在了.podspec文件,直接对此文件进行编辑即可
向Spec Repo提交podspec 定位到.podspec文件,执行命令:pod repo push ZXFMPrivateLib(本地Repo名字) ZXDownloaderLib.podspec
使用制作好的pod库
在podfile文件中添加:
source 'https://git.coding.net/sajiner/ZXFMPrivateLib.git'(私有库地址)
pod 'ZXDownloaderLib', '~> 0.1.0',执行: pod update即可
更新维护podspec
1.添加更多的模块到ZXDownloaderLib中,此时需要编辑之前的ZXDownloaderLib.podspec
s.subspec 'NetWorkEngine' do |networkEngine|编辑完后,在测试项目中执行 pod update,至代码验证无误,将此工程push到远程仓库,并打标签,标签验证无误后,执行:pod repo push ZXFMPrivateLib ZXDownloaderLib.podspec
networkEngine.source_files='Pod/Classes/NetworkEngine/**/*'
networkEngine.public_header_files='Pod/Classes/NetworkEngine/**/*.h'
networkEngine.dependency'AFNetworking','~> 2.3'
end
s.subspec 'DataModel' do |dataModel|
dataModel.source_files='Pod/Classes/DataModel/**/*'
dataModel.public_header_files='Pod/Classes/DataModel/**/*.h'
end
2.删除私有Spec Repo,执行命令:pod repo remove ZXFMPrivateLib
3.删除本地标签:git tag -d '0.1.0'
4.删除远程仓库标签: git push origin :0.1.0
推荐阅读
- CentOS7|CentOS7下LVM创建管理
- 2020IDEA无法创建java|2020IDEA无法创建java web项目解决办法
- 创建私有CA|创建私有CA,我就用openSSL
- 创建 spark_session 读取数据-加入缓存-并使用SQL语句分析
- Oracle|Oracle主键自增设置
- Oracle|运维工程师常用的Oracle经典语句——5.Oracle表空间创建、修改以及查看表空间使用情况
- ETH热钱包方案php|ETH热钱包方案php,以太坊钱包从创建到拥有ETH(Token)完全教程
- 在|在 SAP ABAP 系统对事物码 SEGW 创建的 OData 服务进行配置并测试试读版
- PyQt5|(一)PyQt5系列教程(使用PyQt5创建一个简单的demo)
- Linux进程控制