要做项目了,发现每次自己封装的工具类,每次都要拖拽,感觉很麻烦只能从原先的旧项目中找,想着索性直接添加CocoaPods支持,这样还方便。花了时间弄出来中间趟了不少坑,在这里做个记录吧。方便自己以后使用。
撒干活~
第一步,需要把代码上传到gitHub,这个相信大家都不会陌生,应该也会使用了。这里就不详细的介绍了。
流程如下:

第二步:
将工程发布到cocoa pods上,这样才能用cocoapods进行管理。
NO1、需要有一个pod的账号,在终端上输入pod trunk me查看自己的账号。如果没有就创建一个。如果你不创建账号,在后面pod trunk push你的.podspec的时候会出现

需要在终端输入
pod trunk register email "name" --description="macbook pro"
成功截图:

错误截图:

接下来创建.podspec文件:
cd /你要支持的代码
pod spec create 名称
之后你会发现你的文件夹下多了

用Xcode打开配置文件:

重点关注的书写问题:
s.source_files: 表示的是工程源文件: 和.podspec同级文件下的层层文件,如何这里设置的不对的话就会出现:
错误截图:

我就是在这个坑里趟了太久,他是和.podspecs文件的同级文件夹下的层层查找到{h.m}文件的

错误截图:

原因是没有设置支持系统,找不到你引用的库文件所以要添加
s.platform = :ios, "7.0" 和 s.framework = "UIKit" 告诉配置文件的系统和依赖库

如果你的组件中依赖了其他的第三方库 你需要添加依赖文件,如何没有的话则会抛出错误,
错误截图:

如果你的文件中出现警告的话也是不能通过的
例如:

这就是大概其可能遇到的问题,如果出现错误不要着急 看提示一个个改。
假如你写的是正确的配置完之后需要上传发布:
git add ‘项目名称.podspec' ( 也可以直接输 git add )
然后 git commit -m 'add Demo.podspec' 添加到git上
再用 git push 同步到远程端
创建LICENSE文件
vi LICENSE
直接去网上找一个复制过来,根据需要自己修改一下就能用。
git add 'LICENSE' (或者git add ) 添加
git commit -m 'add LICENSE' 上传
git push 发布
小插曲 什么是 LiCENSE????? ======= 开源许可证书
我也不是太懂,我从网上百度了一个填上了,我看了几个其他的CocoaPods直接的开源项目,有的也没有,那就说明只要你不怕被盗,这个就是不需要设置的。
附链接大家可以看看学习一下。my.oschina.net/kymjs/blog/732756
创建工程的tag
git tag '0.0.1'
git add *
git commit -m 'add tag'
git push origin 0.0.1
输入这些之后,就建立了一个版本,可以在gitHub中看见创建的tag 如图:

检查命令 pod spec lint
如果有错误,就需要根据错误提示更改,每次本地的工程有改动并且需要上传gitHub之后需要改变tag,否则找不到你所改动的,需要将.podspec文件中的s.version和s.source 的tag 改成同样的值。
如果没有错误的话就可以发布了 输入pod trunk push
成功截图:

网友评论