iOS 组件化--创建私库

一、创建私有库

一般情况下公司内部都会搭建自己的源码托管服务器,这里主要是在gitlab中进行创建。

1、打开gitlab地址,选择“Project”打开并创建一个私有库:

在这里插入图片描述
创建私有库需要选择指定的Group、Visibility Level需要选择为Private。

2、gitlab中私有库创建完成后需要在本地添加私有库,打开终端运行如下命令:

pod repo add WZSpecRepo https://gitlab.***.com/v_wuzz/WZSpecRepo.git

二、创建源码库

1、打开gitlab地址,选择“Project”打开并创建一个源码库:

在这里插入图片描述

2、创建标准的CocoaPods Xcode工程

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

pod lib create WZUIKitModule

3、创建podspec文件

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

pod spec create WZUIKitModule

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

在这里插Pod::Spec.new do |spec|@[TOC](这里写自定义目录标题)
 
  # ―――  Spec Metadata  ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
  #
  spec.name         = "WZUIKitModule"
  spec.version      = "0.0.1"
  spec.summary      = "A short description of WZUIKitModule."
  spec.description  = <<-DESC

                   DESC
 
  spec.homepage     = "https://gitlab.***.com/v_wuzz/WZUIKitModule.git"
  # spec.screenshots  = "www.example.com/screenshots_1.gif", "www.example.com/screenshots_2.gif"
 
 
  # ―――  Spec License  ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
  #
  # spec.license      = "MIT (example)"
  spec.license      = { :type => "MIT", :file => "FILE_LICENSE" }
 
 
  # ――― Author Metadata  ――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
  #
  spec.author             = { "wzz" => "***@163.com" }
   
  # ――― 源码路径 ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
  #
  spec.source       = { :git => "https://gitlab.***.com/v_wuzz/WZUIKitModule.git", :tag => spec.version.to_s }
 
 
  # ――― 源码目录 ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
  #
  spec.source_files  = "WZUIKitModule/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://gitlab.***.com/v_wuzz/WZUIKitModule.git"
git add .
git commit -m "Initial commit"
git push -u origin master
 
 
// 生成一个初始的正式tag,方便将源码库推到私有库
git tag 0.0.1
git push --tags

6、验证远程podspec

注意:如果私库依赖私库加上source 'https://gitlab.***.com/v_wuzz/WZSpecRepo.git’在验证

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

三、将源码库推向私有库

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

pod repo push WZSpecRepo WZUIKitModule.podspec --verbose --allow-warnings --use-libraries

四、Podfile绑定源

podspec上传完成后如果需要在工程中依赖某一源码库,需要在Podfile文件中添加源码库所指向的私有库。具体如下:

source 'https://gitlab.***.com/v_wuzz/WZSpecRepo.git'

lint时相关选项说明:
–allow-warnings:表示允许警告
–verbose:查看详细的验证过程来帮助定位错误
–use-libraries:表示使用静态库或者是framework

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值