前言:制作一个有相互依赖关系的本地库,之前写的私有库和公开pod库的制作步骤都没有写如果有依赖关系应该如何处理。
期待:制作一个组件库1(
XXLogin),但是组件库1(XXLogin)依赖一个公开库2(XXAlertTransition)和一个本地库3(XXNetworking), 本地库3(XXNetworking)又依赖一个网络库4(AFNetworking)
一、 首先创建一个新工程,然后创建了一个Lib文件夹来管理所有的development pod。

image.png
二、 创建本地库XXNetworking。(因为期望中XXLogin要依赖这个库,所以先制作好这个)
-
cd到Lib文件夹下pod lib create XXNetworking
image.png - 删除
Classes文件下的ReplaceMe文件,添加自己的类。
image.png - 修改
XXNetworking.podspec,按照本文开头期望那样,依赖AFNetworking。XXNetworking对AFNetworking进行二次封装,其实这里没有真正的写封装代码,只是为了制作本地库弄的demo。
image.png
三、创建本地库XXLogin
-
cd到Lib文件夹下pod lib create XXLogin,过程和上面一样,省略。 - 删除
Classes文件下的ReplaceMe文件,添加自己的类。
image.png - 修改
XXLogin.podspec
image.png
四、 使用
-
cd到 最开始创建的XXDevelopmentPod工程目录下,创建Pofile文件。
image.png -
pod install
image.png -
看下工程目录到变化。
image.png
五、 总结
- 注意⚠️:
- 本来只想引入
XXLogin这个库,但是这个库依赖了另一个本地库XXNetworking,所以在Podfile文件中,需要指定出XXNetworking的path,否则会报错,如下图
image.png

image.png
- 而依赖的其他公开网络库则不用在
Podfile文件中指定,会自动pod下来依赖的库。
- 本地库和私有库公开库区别
- 不用分开制作一个git仓库
- 不用和远程关联,改库版本、打tag...
- 本地修改即时生效不用发布
其他系列:








