iOS基于CocoaPods的私有库集成实现
source link: https://juejin.cn/post/7059679100423634975
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
iOS基于CocoaPods的私有库集成实现
废话少说直接开始CocoaPods私有库总共需要三步。
一:建私有库索引库
二:上传自己的轮子
三:把轮子去私有库那里“备案”一下
1.登录gaythub 2.建立一个仓库命名为xxxRepo 点击Create repository建remote库,建完记得别忘了这段代码
3.本地进入默认索引库路径,~/.cocoapods/repos
可以看到可能在平时使用中已经有很多索引库了 我们也在当前目录下建一个,我这就命名为
zccPriRepo
复制代码
然后打terminal,cd到zccPriRepo/
依次输入下面几行命令,初始化git仓库,且连接到git上建的zccPriRepo
库
额,这里有个问题在输入正确密码后终端会报错
这是因为在去年2021年8月13日起就要求通过token认证登录了,
如何申请token可以百度搜一下,或者我后期再整理下发个文章。
总之我们现在拿到了token,那么重复git push -u origin master
在红框中复制token就可以成功push上去代码了。
好了,我们的第一步完成了。
假设我现在想创建一个私有库用来放自己开发的UI那么我得输入pod lib create ZCCUIComponent
然后依次会出现这几个问题
What platform do you want to use?? [ iOS / macOS ]
选择系统平台
What language do you want to use?? [ Swift / ObjC ]
选择语言
Would you like to include a demo application with your library? [ Yes / No ]
需不需要demo工程(我选了YES)
Which testing frameworks will you use? [ Specta / Kiwi / None ]
需要哪个测试框架?(这个没需要我选了None)
Would you like to do view based testing? [ Yes / No ]
你是否需要基础视图测试(这个不太懂选了NO)
What is your class prefix?
你需要什么类前缀
复制代码
选完之后xcode会自动打开当前创建的工程,当前目录下也有对应工程文件。 如下图 接着进入
用自己的文件替换掉Classes文件夹下的ReplaceMe.m文件。
配置.podspec文件
根据自己的需求可以修改下对应配置,二进制和头文在大型项目开发还挺有用的,这样一个pods库就配置完了,我们可以进入Example文件夹Pod install
看是否能成功引用和成功使用自己的文件
然后可以通过pod lib lint 验证是这个库否正确,但是应该会报图中的warning,因为我们并没有给这个库建远端库。
根据它的提示我们 再加上--allow-warnings试试
OK!过了。 现在我们可以在自己的远端私有库创建一个项目,我这边因为公司服务器不能乱建,就暂时也用github整个组件的远端库。 创建流程和上面创建索引库一样,如果报如下问题,就再多push几次
最后需要加个tag
git tag "0.1.0"
git push origin --tag
复制代码
将自己组件版本之类信息去组件库库备案下
pod repo push 本地索引库名 第二步中创建的索引文件名 --verbose --allow-warnings --use-libraries
复制代码
这里可能会碰到一个问题,就是一直报443的错
[!] /usr/local/bin/git -C /Users/zcc/.cocoapods/repos/zccPriRepo pull
fatal: unable to access 'https://github.com/zcc2o/zccPriRepo.git/': Failed to connect to github.com port 443: Operation timed out
复制代码
但是进去自己的本地组件库看,组件版本是已经更新了
那其实就是git连不上的问题,只能cd 到组件库文件夹路径
~/.cocoapods/repos/zccPriRepo
复制代码
然后git push 多试几次,还可以架架梯子什么的,我试了四次才成功。。真不容易。。
这里想说的是pod repo push 本地索引库名 第二步中创建的索引文件名 --verbose --allow-warnings --use-libraries
这个命令如果有报错也别慌张,分步解决即可。
组件库终于整完了,最后使用方法就和普通的cocoapods库差不多,不过要指定下搜索路径
Podfile中这么配置
然后去项目路径下pod install
,可能还是会碰到git连不上的问题,架梯子解决了。
成功后xcode文件目录如图
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK