前言
当我们要对一下项目做组件化,那么第一步就是要创建我们自己的私有库,参考了网上的资料,加上中间遇到的坑,现在整理一下操作步骤,按照这个步骤基本都可以成功创建自己的私有库。废话不多说,步骤如下
1、创建一个自己的远程私有索引库,用来存放私有框架的详细描述信息.podspec文件 ,我这里用的是码云,也可以选用其他的平台
2、创建本地的私有索引库文件夹,并与远程私有索引库进行关联
- 2.1
$ pod repo(查看本地已存在的索引库)
结果如下:
master
- Type: git (master)
- URL: https://github.com/CocoaPods/Specs.git
- Path: /Users/heaven/.cocoapods/repos/master
- 2.2 添加本地私有索引库并与远程私有库关联
$ pod repo add MySpec https://gitee.com/DPLucy/MyProjectSpec.git
- 2.3 再次查看本地已存在的索引库 $ pod repo
master
- Type: git (master)
- URL: https://github.com/CocoaPods/Specs.git
- Path: /Users/heaven/.cocoapods/repos/master
MySpec
- Type: git (master)
- URL: https://gitee.com/DPLucy/MyProjectSpec.git
- Path: /Users/heaven/.cocoapods/repos/MySpec
3、快速创建模板测试工程
- 3.1 快速创建模板测试工程 在目标路径下执行
$ pod lib create MyTest (快速创建)
-
3.2 填写以上信息后Xcode会自动打开测试工程,在测试模板工程文件夹下,我们可以看到如下:
- 3.3 替换ReplaceMe.m文件,在回到Example路径下,重新执行pod install操作
4、将上面的模板测试工程,提交到远程代码仓库
-
4.1 在码云上创建私有仓库,项目名称和第3步创建的测试工程的名称一致
- 4.2 直接导入项目
进入MyTest文件目录下,执行下面命令
$ git remote add origin git@gitee.com:DPLucy/MyTest.git
$ git push -u origin master
成功之后接着执行如下命令
$ git add .
$ git commit -m'导入项目'
$ git push
-
4.3 编辑MyTest.podspec 文件
要改动的地方如下
- 4.4
$ pod lib lint (验证上一步编辑的 MyTest.podspec文件)
(如有警告:用:pod spec lint --allow-warnings)
如果有ERROR,则需要去一个个修改完成,例如某个文件没有正确的引入依赖库等都会造成ERROR,解决好所有的ERROR后,验证结果如下代表已经成功
如果有如下报错:
解决办法:去xcode设置里面,将Command line Tools设置一下,在Xcode>preferences>Locations里面,设置之后再运行终端即可
- 4.4、提交改动后的MyTest.podspec文件
$ git add .
$ git commit -m '修改podspe文件'
$ git push
$ pod spec lint --allow-warnings (再次验证)
5、 给项目打tag,要和之前修改的spec文件中的version一致
$ git tag 0.1.0
$ git push --tags
如果在这里遇到要填写用户名不和密码,一定要填写正确
6、将podspec文件提交到本地的私有索引库
查看
$ pod repo
master
- Type: git (master)
- URL: https://github.com/CocoaPods/Specs.git
- Path: /Users/heaven/.cocoapods/repos/master
MySpec
- Type: git (master)
- URL: https://gitee.com/DPLucy/MyProjectSpec.git
- Path: /Users/heaven/.cocoapods/repos/MySpec
$ pod repo push MyProjectSpec MyProjectBase.podspec
成功如下
7、使用创建的私有库
- 7.1、新建一个项目,进入工程目录,执行
$ pod init
-
7.2、用Xcode打开Podfile,
- 7.3、安装至此大功告成
$ pod install
8、如果有版本更新,修改spec中的版本号,同时打上相应的tag,重复第4步以及之后的步骤
以上仅是个人操作过程中的方法步骤,如果遇到不同的问题,欢迎留言交流!!!