CocoaPods模块化

239 阅读1分钟

1、创建源码库

申请工单,运维创建对应代码库。统一以`JK_` 开头

2、创建标准的CocoaPods Xcode工程。

在终端执行如下命令可以自动生成标准的CocoaPods Xcode工程。

pod lib create JK_Utils

3、创建podspec文件

在终端执行如下命令可以自动在工程目录生成podspec文件。如果是通过命令创建的标准CocoaPods Xcode工程不需要通过命令创建podsepc文件。

pod spec create JK_Utils

podspec创建完成后需要修改相应的配置数据,下面是一个例子,具体可参考修改。

Pod::Spec.``new do |spec|

# ――― Spec Metadata ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
#
[spec.name](http://spec.name/) = "JK_Utils"
spec.version = "0.0.1"
spec.summary = "A short description of JKDJ_UserAuditModule."
spec.description = <<-DESC
工具库
DESC

spec.homepage = "[https://codeup.aliyun.com/5f0bc7c1db0493ecef909873/mobile-center/IOS/JK_Utils](https://codeup.aliyun.com/5f0bc7c1db0493ecef909873/mobile-center/IOS/JK_Utils)"

# ――― Spec License ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
#
# spec.license = "MIT (example)"
spec.license = { :type => "MIT"``, :file => "FILE_LICENSE" }

# ――― Author Metadata ――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
#
spec.author = { "wangqitong" => "wangqitong@[fosunhealth.com](http://fosunhealth.com/)" }

# ――― 源码路径 ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
#
spec.source = { :git => "[https://codeup.aliyun.com/5f0bc7c1db0493ecef909873/mobile-center/IOS/JK_Utils.git](https://codeup.aliyun.com/5f0bc7c1db0493ecef909873/mobile-center/IOS/JK_Utils.git)"``, :tag => spec.version.to_s }

# ――― 源码目录 ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
#
spec.source_files = "JK_Utils/Classes"``, "Classes/**/*.{h,m}"

# ――― 资源文件 ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
#
# spec.resource = "icon.png"
# spec.resources = "Resources/*.png"

# ――― 依赖库 ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
#
#spec.dependency "JSONKit"``, "~> 1.4"

end

4、本地较验podspec是否符合规范

为了保证podspce符合书写规范,需要在上传前在本地做一个初步的较验。

pod lib lint --verbose --use-libraries --allow-warnings

5、上传工程并创建一个正式的tag

将工程上传到刚刚创建的源码库。并创建一个正式的tag。

git remote add origin https:``//[codeup.aliyun.com/5f0bc7c1db0493ecef909873/mobile-center/IOS/JK_Utils.git](http://codeup.aliyun.com/5f0bc7c1db0493ecef909873/mobile-center/IOS/JK_Utils.git)
git add .
git commit -m "Initial commit"
git push -u origin master

// 生成一个初始的正式tag,方便将源码库推到私有库
git tag 0.0``.``1
git push --tags

6、验证远程podspec

pod spec lint JK_Utils.podspec --verbose --allow-warnings --use-libraries

7、将源码库推向私有库

将刚刚远程验证完成的podspec上传到私有库。

pod repo push aliyun-5f0bc7c1db0493ecef909873-mobile-center-ios-fx-specs JK_Utils.podspec --verbose --allow-warnings --use-libraries

lint时相关选项说明:

  • --allow-warnings:表示允许警告
  • --verbose:查看详细的验证过程来帮助定位错误
  • --use-libraries:表示使用静态库或者是framework