组件化 - 远程私有库

组件化 - 远程私有库

远程私有库相对于本地私有库多了许多配置,对 .spec 文件的配置就显得尤为重要了许多

首先,一般采用pod库的形式来集成的远程私有库就需要我们对 cocoapods 的工作有一定的认识。

image.png

一、 创建远程私有索引库

  1. 在git托管平台创建 ChuangSpecs 工程 作为远程索引库 git 地址为 http://10.10.1.18/caolongjian/ChuangSpecs.git
  1. 本地创建私有库索引仓库
pod repo add ChuangSpecs http://10.10.1.18/caolongjian/ChuangSpecs.git

注意: 若使用 git@10.10.1.18:caolongjian/ChuangSpecs.git 需配置SSH

image.png

二、 将本地项目推送到远程

  1. 在git托管平台创建 JJTableView 工程

并将本地的仓库和远程的仓库进行关联

git remote add origin http://10.10.1.18/caolongjian/JJTableView.git
git push -u origin master

注意: 第一次push的时候,加上-u参数,Git就会把本地的master分支和远程的master分支进行关联起来,以后的push操作就不再需要加上-u参数了

三、 配置 JJTableView.podspec 文件

image.png

1. 校验一下我们.spec文件是否合法

pod lib lint

若发现如下 n 多错误,请根据WARN 修改(泪奔,一开始忽略了警告,直接修改ERROR)默认Swift3.2 验证,代码是在Swift4.0下编写运行

-WARN | [iOS] swift: The validator used Swift 3.2 by default because no Swift version was specified. To specify a Swift version during validation, add the swift_version attribute in your podspec. Note that usage of the --swift-version parameter or a .swift-version file is now deprecated.

错误:❌


image.png

解决方案,修改验证编译环境为 Swift 4.0


image.png

2. tag 标签

git tag 0.1.0
git push --tags

3. 校验远程 .spec文件是否合法

pod spec lint
image.png

4. .repo 提交到远程私有索引库

我们要将 JJTableView.podspec 提交到我们的远程私有索引库(ChuangSpecs)当中去,使用pod repo push [远程私有索引库名称] [框架名称的描述文件]

$ pod repo push ChuangSpecs JJTableView.podspec
image.png
  • 对应远程索引库:


    image.png
  • 对应本地索引库:


    image.png
  • 使用 pod search JJTableView 搜索


    image.png

四、 主工程使用组件

  1. 配置 podfile 文件
    默认指定源是Cocoapods的官方索引库,需要添加自己的远程私有库

    • 添加source,记得默认源也要添加上

      source 'https://github.com/CocoaPods/Specs.git'
      

source 'http://10.10.1.18/caolongjian/ChuangSpecs.git'
```

- pod 'JJTableView'

    ```
    #pod 'JJTableView', :path => '../Lib/JJTableView'

pod 'JJTableView', '0.1.4'
```

  1. 执行 pod install

附问题:

问题一:pod lib lint 验证不通过 出错

Swift 验证版本问题,根据提示添加 swift_version 属性

问题二:二级目录没有显示出来

image.png
  • 修改 s.source_files 加上 .swift


    image.png
  • 多级目录提交, 多文件之间尽量不要相互依赖
s.subspec 'CellKit' do |cellKit|
    cellKit.source_files = 'JJTableView/Classes/JJTableView/CellKit/**/*'
    cellKit.public_header_files = 'Pod/Classes/**/*.h'
    cellKit.dependency 'AFNetworking', '~> 2.3'
end

文章目录

[TOC]

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 227,156评论 6 529
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 97,866评论 3 413
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 174,880评论 0 373
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 62,398评论 1 308
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 71,202评论 6 405
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 54,743评论 1 320
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 42,822评论 3 438
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 41,962评论 0 285
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 48,476评论 1 331
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 40,444评论 3 354
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 42,579评论 1 365
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 38,129评论 5 355
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 43,840评论 3 344
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 34,231评论 0 25
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 35,487评论 1 281
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 51,177评论 3 388
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 47,568评论 2 370

推荐阅读更多精彩内容