iOS GitSubModule CocoaPod 制作私有源本地组件库

制作组件库

创建本地POD库

css 复制代码
pod lib create [你的库名称]

What platform do you want to use?? [ iOS / macOS ]
> iOS (选择平台,这里以iOS为例)
What language do you want to use?? [ Swift / ObjC ]
> Swift (选择开发语言)
Would you like to include a demo application with your library? [ Yes / No ]
> No (是否包含示例项目,推荐选Yes,方便测试)
Which testing frameworks will you use? [ Quick / None ]
> None (测试框架,新手可选None)
Would you like to do view based testing? [ Yes / No ]
> No (是否需要视图测试,选No)

创建后

复制代码
TestLib.podspec Pod库描述文件(核心)
_Pods.xcodeproj 自动生成的Pods项目
Example 示例项目
TestLib
MyNetwork.xcworkspace
LICENSE 许可证文件
Classes 存放库的源代码
ReplaceMe.swift 默认生成的示例文件(需替换)

Pod描述文件内容

必填字段(缺少会导致验证失败):

css 复制代码
s.name:库名称,必须与 .podspec 文件名一致
s.version:版本号,需遵循语义化版本(如 1.0.0)
s.summary:简短描述(140 字符以内)
s.description:详细描述(比 summary 更完整)
s.homepage:项目主页 URL
s.license:许可证类型(如 MIT)及许可证文件路径
s.author:作者信息
s.source:源代码仓库地址(Git 仓库 URL)及标签
s.platform / s.ios.deployment_target:支持的平台及最低版本
s.source_files:源代码文件的路径(用于指定哪些文件会被打包)

常用可选字段:

复制代码
s.swift_version:指定 Swift 版本(如 5.5)
s.resource_bundles / s.resource:配置资源文件(图片、XIB 等)
s.dependency:声明依赖的其他库(第三方或私有库)
s.static_framework:强制生成静态框架(适用于混编项目)
s.subspec:将库拆分为子模块(如按功能拆分 Core / UI 模块)
  • 将库的源代码都放入Classes目录下
  • 将库的图片资源都放入Assets目录下

添加远程仓库配置,提交代码并打标签

csharp 复制代码
git remote add origin https://github.com/XXX/TestLib.git
git add .
git commit -m "Initial commit"
git tag 0.1.0
git push -u origin main

主工程添加子模块

  • git submodule add 远程仓库 本地路径
  • 例:git submodule add github.com/XXX/TestLib SubModule/TestLib

主工程会在根目录创建 SubModule,并在 SubModule 下面添加 TestLib 子模块

上面的 本地路径SubModule/TestLib 路径会在项目PodFile的配置中用到

集成本地Pod

在项目的 Podfile 中,引入此组件库

  • pod 'TestLib', :path => 'SubModule/TestLib'

path 填写上一步中添加的本地路径SubModule/TestLib

  • 主工程 pod install

大功告成啦!

组件化利器,后面只需要不断更新SubModule中的代码就可以了

相关推荐
某林21216 分钟前
ROS2 并行编译死锁与 Linux 后台声卡/提权踩坑实录:大型轮足机器人架构复盘
linux·架构·机器人·iassc
AI科技星25 分钟前
第四卷:橡皮泥江湖(拓扑学)――诸同奥义,九同立境贯拓扑
网络·人工智能·线性代数·架构·概率论·学习方法·拓扑学
DianSan_ERP43 分钟前
架构师视角:电商大促高并发下的订单API限流与防漏单架构演进
java·运维·网络·安全·微服务·架构·自动化
一尘之中2 小时前
基于架构的软件开发方法
学习·架构·ai写作
AI科技星2 小时前
第三卷:质数王朝志 第四章:RSA护国玄阵,质数锁天地,一数镇万法
android·人工智能·架构·概率论·学习方法
陈猪的杰咪2 小时前
【2026最新指南】AI大模型API中转站选型参考:国内稳定接入ChatGPT、Claude、Gemini等主流模型实践分享
运维·网络·人工智能·chatgpt·架构
小雨下雨的雨3 小时前
HarmonyOS V2状态管理深度解析:列表数据与分页架构
华为·架构·harmonyos·鸿蒙