创建CocoaPods的私有库

CocoaPods除了可以做第三方开源库的管理。其实还可以做私有库的管理。

比如:

第一:我们公司自己的库,可以共享给公司很多团队使用,如果直接copy会很麻烦,所以我们可以把他托管到自己的git服务器上,然后做成私有的库pod 进相应的工程项目里面使用。

第二:如果现有的第三方库满足不了我们现在的需求,我们可以做适当的修改,当时开这个项目的开发者不一定合并我们的代码,所以呢,我们也可以做成私有的库托管到公司自己的服务器上维护。

下面大致介绍下我自己修改的JSONModel 做成私有库维护在自己的git 服务器上,然后pod进现有的工程使用的一个步骤吧。

第一步:假如自己的代码托管在git服务器上,我们先到当前工程目录下创建一个Podspec索引文件,然后放到一些编辑工具编辑

pod spec create JSONModel 

Pod::Spec.new do |s|

s.name        = "JSONModel"

s.version      = "1.0.2"

s.summary      = "JSONModel 做了私有的修改"

s.homepage    = "http://10.1.64.25/Servens/JSONModel.git"

s.license      = 'MIT'

s.author      = { "sevens" => "qiqi@qiqi.com" }

s.source      = { :git => "http://10.1.64.25/Servens/JSONModel.git", :tag => "1.0.2" }

s.ios.deployment_target = '6.0'

s.osx.deployment_target = '10.7'

s.watchos.deployment_target = '2.0'

s.tvos.deployment_target = '9.0'

s.source_files = 'JSONModel/*.{m,h}'

s.public_header_files = 'JSONModel/*.h'

s.requires_arc = true

end

参数名字解释:

s.name声明库的名称

s.summary对这个库的简短说明介绍

s.version当前库的版本

s.homepage声明库的主页

s.license所采用的授权版本

s.author库的作者

s.platform库运行的平台和系统的最低版本

s.source库的仓库地址以及版本号或者committed等

s.source_files声明库的源代码的位置,库的真正路径(一般是相对路径)所以这个地方不能填错。这个目录下的文件都会进行编译。

s.resources存放我们不想参与编译的资源文件

s.frameworks声明了库所依赖的系统核心库

s.dependency我们开发的库中也可能还依赖第三方库,例如JSONKit,那么,就可以做如下声明:s.dependency "JSONKit", "~> 1.4",如果有多个就写多个

验证文件有效性

pod spec lint JSONModel.podspec --verbose  --allow-warnings

注意:

加上这个verbose参数可以把一些详细信息打印出来方便查看错误信息。如果有错误按照提示修改。警告虽然也可以忽略,但是也要当作错误处理。

注意配置文件里面的版本号要和自己代码的标签版本对应

s.source_files 文件路径是相对于podspec的路径


第二步:创建一个工程在git上保存我们的podspec文件

给cocoapods添加私有repo

pod repo add JSONModelPod https://192.168.2.2/JSONModel.git

pod repo list

用上述命令可以查看自己的刚才创建的本地仓库,除了master 和 private 我们单独创建一个文件夹因为我们是第三方库做修改的private里面已经存在有可能,所以这样不会冲突。

把配置文件添加到本地并推送到服务器上

pod repo push ~/JSONModel/JSONModel.podspec --allow-warnings

可以去JSONModel文件夹里面查看有一个当前版本,如果以后有新的版本,会有多个文件夹里面有相应的配置文件。

第三步:怎么把自己的私有库引入到当前工程里面使用。

# Uncomment this line to define a global platform for your project

source'http://10.1.2.5/Servens/JSONModelConfigurationFile.git'

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

platform :ios,'8.0'

inhibit_all_warnings!

target'CocoapodsTest'do

pod'AFNetworking'

pod'JSONModel','1.0.2'

end

注意添加source'仓库地址' 自己的在前面,官方的在后面,可以添加多个自己的仓库路径

第四:私有库的维护怎么个步骤呢

1:自己库更新打一个新的tag 和 配置文件里面的版本号对应起来

2 :pod spec lint JSONModel.podspec --verbose  --allow-warnings  验证有效性

3:pod repo push JSONModel ~/JSONModel/JSONModel.podspec --allow-warnings 推送到服务器

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

推荐阅读更多精彩内容