cocospods 创建私有库

模块化和组件化的开发要求我们需要使用cocospods创建并管理自己的私有库
在此我转载别人的一篇文章
下面说几点
https://leihuai.coding.net/user 这是可以拥有自己私有git 库的地址,自己申请账号,自己创建远程仓库等。

https://www.jianshu.com/p/c8ea1f95717a 这是那篇文章的地址,感谢这个兄弟,我按照他的步骤,成功生成了自己的库,并且可以通过pod引入到其他项目中。注意:引入的库头文件的引用,可能没有自动提示,没关系,手动硬敲也行。

关于 s.source 和 s.homepage 有不明白的,咱们一起探讨。

为了防止 那兄弟的文章删掉,我把原文也考在这里 集成过程中有什么问题,我们一起探讨 2849765859 我的qq

IOS创建CocoaPods私有库

最近领导说要把项目模块化、组件化,网上看了一大推资料,自己瞎搞了一天,终于告一段落。

IOS创建私有库步骤

1、在终端上移动到你想创建pod库工程的路径,并执行pod库的创建。命令如下

BetterdeMacBook-Pro:~ better$ cd desktop
BetterdeMacBook-Pro:desktop better$ pod lib create PrivateHelloWorld
回车之后,终端会询问你几个哲学的问题

选择编程语言

What language do you want to use?? [ Swift / ObjC ]

Objc

在你的项目中是否创建一个demo工程,为了方便测试,我选择了Yes

Would you like to include a demo application with your library? [ Yes / No ]

Yes

测试框架选择哪一个

Which testing frameworks will you use? [ Specta / Kiwi / None ]

None

#要不要做视图测试
Would you like to do view based testing? [ Yes / No ]

Yes

类前缀名

What is your class prefix?

BY

安装Pod成功.png
恭喜你,Pod私有库创建成功。一般来说创建成功会自动打开项目

2、安装CocoaPods项目
找到刚才创建的PrivateHelloWorld文件夹,点击入去,里面的目录如下

image.png

移到Example目录下

BetterdeMacBook-Pro:desktop better$ cd /Users/better/Desktop/PrivateHelloWorld/Example

安装CocoaPods项目

BetterdeMacBook-Pro:Example better$ pod install --no-repo-update
安装过程如下图

image.png

吓了我一跳,3行黄色字英文,大概意思就是Example文件夹里面的Podfile文件没有指定的平台和版本号,默认用ios,版本为9.3版本,建议你balabalabala.

不管了先进去Example文件夹点击后缀为xcworkspace的文件打开项目,运行下是否成功。 OK成功了

3、添加你要添加代码文件(复制粘贴)

image.png

我这里放了PrintHelloWorld文件

4、编辑CocoaPods的配置文件(后缀名为podspec),打开PrintHelloWorld文件夹就可以看到
可以有很多种编辑方式编辑这个文件,如Xcode、文本编辑器、Sublime Text系列、Atom
我是用文本编辑器打开,难看是难看点,但胜在够方便

podspec文件.png
s.version我习惯是0.0.1开始
s.summary需要改改,不然待会提交会报错
s.homepage这里随便写个网站都行,建议写项目的首页,但一定要改,不然默认的会报错,因为没有默认的网址

s.source需要填一个git地址的私有库,github收费的,为了省钱,找了码云,对,码云(百度就能搜)

码云创建私有库.png

创建成功.png

复制私有库地址,在.podspec文件内的s.source替换地址

image.png

配置完成了

再次移到我们的Example文件,pod更新一下

BetterdeMacBook-Pro:Example better$ pod update --no-repo-update

image.png
打开项目,看看是否成功了

image.png

嘿,添加进来了那就试试PrintHelloWorld可不可以调用

5、添加PrintHelloWorld,运行测试
打开项目,在BYViewController.m里面导入PrintHelloWorld.h文件

image.png

竟然报警了,为什么没有提示的,上网查了下,说直接把要导入的类写进去就好了,试了下还真行,如果有同学知道的话告诉下为什么。

image.png

看到信息了,证明我们本地运行代码没问题,人比较懒,没做界面,直接写了句打印,见谅。现在需要将项目发布到git,并添加到pod。
6、验证pod配置文件
为了保证项目正确性,pod文件配置没问题,在提交之前,我们需要验证一下

用终端移到我们的项目路径

BetterdeMacBook-Pro:~ better$ cd /Users/better/Desktop/PrivateHelloWorld

image.png

到这里,我们已经完成源码导入、验证项目是否能运行、pod配置文件本地验证了

7、项目发布,tag 0.0.1
终端移到该项目文件下执行git的相关命令

添加远程地址,即上面创建码云项目的地址

BetterdeMacBook-Pro:PrivateHelloWorld better$ git remote add origin https://gitee.com/Better_Y/PrintHelloWorld.git

添加文件

BetterdeMacBook-Pro:PrivateHelloWorld better$ git add .

提交本地,并写描述

BetterdeMacBook-Pro:PrivateHelloWorld better$ git commit -a -m “第一次提交 版本为0.0.1”

–allow-unrelated-histories

git pull origin maste会失败 ,提示:fatal: refusing to merge unrelated histories

原因是远程仓库origin上的分支master和本地分支master被Git认为是不同的仓库,所以不能直接合并,需要添加 --allow-unrelated-histories

BetterdeMacBook-Pro:PrivateHelloWorld better$ git pull origin master --allow-unrelated-histories

推送到码云的PrintHelloWolrd项目的master分支上

BetterdeMacBook-Pro:PrivateHelloWorld better$ git push origin master

提交版本号

BetterdeMacBook-Pro:PrivateHelloWorld better$ git tag 0.0.1

push到远程分支

BetterdeMacBook-Pro:PrivateHelloWorld better$ git push origin 0.0.1

image.png

留心的小伙伴可能会看到,有一个已解决冲突的文件README.md,是上面使用git pull origin master --allow-unrelated-histories命令后报的冲突错误,你可以在创建项目时删掉这个文件,但我个人建议是解决冲突,再按上面步骤再来一遍,从 # 添加文件开始

8、创建Sepc管理库
创建步骤跟上面码云创建的git私有库同理

在终端执行Specs创建命令

BetterdeMacBook-Pro:PrivateHelloWorld better$ pod repo add PrintSpecs https://gitee.com/Better_Y/PrintSpecs.git
现在,我们可以直接发布了

PrintSpecs是刚才上面添加的管理库名字

PrivateHelloWorld.podspec是PrintHelloWorld项目里面后缀为podspec的文件名

BetterdeMacBook-Pro:PrivateHelloWorld better$ pod repo push PrintSpecs PrivateHelloWorld.podspec
发布成功后,我们可以去码云看看PrivateSpecs的git项目有没有提交成功

spec发布成功后的git.png
查看我们本地的Specs库:
直接Findle ->右键 -> 前往文件夹 -> 输入:~/.cocoapods/repos ->点击前往

image.png

本地Spec管理库.png

到这里,我们的私有库发布已经全部完成了

9、检验私有库发布

新建privateDemo项目,创建Podfile文件并安装
Podfile代码如下

platform :ios,‘8.0’
target ‘privateDemo’ do
pod ‘PrintHelloWorld’,:git => ‘https://gitee.com/Better_Y/PrintHelloWorld.git’
end
打开终端并执行pod安装指令:

BetterdeMacBook-Pro:~ better$ cd /Users/better/Desktop/privateDemo
BetterdeMacBook-Pro:privateDemo better$ pod install --no-repo-update
成功结果如下

安装pod.png
我们打开PrivateDemo项目目录看看

pod目录.png

我们在Appdelegate.m文件试试能否调用

结果.png

到这里,验证我们的私有库发布就完满结束了!!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值