私有库创建步骤
1. 建立自己的 Git 仓库,作为自己的索引库,将索引库添加到 pod repo 中
这里以自己的服务器部署 Gitlab 作为私有库管理。Gitlab 部署
Gitlab CentOS 部署
GitLab 安装包官网地址
Gitlab 部署完毕后,创建类似 Github 的索引仓库,这里命名 gitlab-specs
将 gitlab 上的索引库 添加到本地
1
2
3 pod repo add [索引库在本地的名字] [索引库在远程服务器的地址]
# 这里用gitlab-specs本地名字为例
pod repo add gitlab-specs http://samchiang.com/samchiang/gitlabSpecs.git
这样可以再 ~/.cocoapods/repos 目录下看到 gitlab-specs 仓库
2. 创建 Pod 项目
用下面的命令创建 pod 项目,这里创建个 Util 组件库
1
2
3 pod lib create 【pod库的项目名称】
# 例如
pod lib create SCUtil
3. 修改 Pod 项目
可以用 Exmaple 编写的 pod 库,编写完成后进入第 4 步
4. 修改*.podspec 文件,并验证
如何编写你的.podspec
一些常用信息介绍
name:框架名
version:当前版本(注意,是当前版本,假如你后续更新了新版本,需要修改此处)
summary:简要描述,在 pod search ZCPKit 的时候会显示该信息。
description:详细描述
homepage:页面链接
license:开源协议
author:作者
source:源码 git 地址
platform:支持最低 ios 版本
source_files:源文件(可以包含.h 和.m)
public_header_files:头文件(.h 文件)
resources:资源文件(配置的文件都会被放到 mainBundle 中)
resource_bundles:资源文件(配置的文件会放到你自己指定的 bundle 中)
frameworks:依赖的系统框架
vendored_frameworks:依赖的非系统框架
libraries:依赖的系统库
vendored_libraries:依赖的非系统的静态库
dependency:依赖的三方库如何实现目录分层
Pod 目录结构
SCUtil
|____ ValidUtil
|____ CropUtil
使用 subspec
1
2
3
4
5
6
7
8
9
10
11 =========== subspecs 配置 ===========
s.subspece 'validUtil' do |ss|
#目录为文件根目录下第一路由
ss.source_files = 'ValidUtil/*'
end
s.subspec 'CropUtil' do |ss|
ss.source_files = 'CropUtil/*'
#如果有依赖项添加依赖项,这里假设 CropUtil依赖 ValidUtil
ss.dependency 'SCUtil/ValidUtil'
end
其他依赖项和主项目的配置方式是一致的
参考 podspec 配置文章
参考 podspec 可能错误的文章
1 pod lib lint
5. 建立 pod Git 库,将 Pod 项目代码提交,并添加标签
1 | git add . |
6. 将 pod 库 索引添加到自己的索引库
这里 本地索引库以 gitlab-specs 为例 ,自己的 pod 私有库以 SCUtil 为例
1 | pod repo push gitlab-specs SCUtil.podspec |
7. 测试
1 | //创建自己的项目,添加podfile |