Cocoapods作为iOS开发的包管理器,给我们的开发带来了极大的便利,而且越来越多的第三方类库支持Pod,可以通过Pod傻瓜式的集成到自己的工程中,那么问题来了,我自己也有一系列的小工具类,怎么让它也支持pod集成,进而以后的项目开发更加的方便的使用呢?

这是第二遍操作了,第一遍学习使用卡在中间,一直不成功....哈哈,多亏了师傅的帮助和解答.

这里再次操作熟练来记录下,算是总结吧:

1.上传项目源码:


把项目源码上传到gitHub仓库, https://github.com/PengSiSi/iOS_PSCategory

再clone到本地,如果项目本来就在gitHub的仓库中,直接clone到本地即可.

2.用终端命令cd到本地项目目录并执行如下命令:

pod spec create iOS_Category

这时候本地就生成一个iOS_Category.podspec文件

3.用编辑器打开.podspec文件,我用的Xcode打开的.

Pod::Spec.new do |s|
s.name = 'iOS_Category'
s.version = '0.0.1'
s.summary = 'iOS_Category is a iOS_Category'
s.homepage = 'https://github.com/PengSiSi/iOS_PSCategory'
s.license = 'MIT'
s.author = { 'PengSi' => '1299625033@qq.com' }
s.source = { :git => 'https://github.com/PengSiSi/iOS_PSCategory.git',:tag => s.version.to_s }
s.source_files = 'iOS_Category/*.{h,m}'
s.frameworks = 'UIKit', 'Foundation'
s.requires_arc = true
s.ios.deployment_target = '7.0' end

4.为源代码添加对应的Tag;

git tag '0.0.1' //版本号

git push --tags //提交标签

5.验证podspec文件:

编辑完podspec文件后需要验证一下这个文件是否可用podspec文件不允许有任何的Warning或者Error

执行命令

pod spec lint iOS_PSCategory.podspec --verbose

注意:  任何的警告、错误都是不能被添加到Spec Repo中


6. 通过Trunk推送给Cocoapods服务器:

首先向trunk服务器查询自己的注册信息

pod trunk me

存在Trunk账号截图

没有注册Trunk的话,注册一个账号即可:

pod trunk register 邮箱全称 '用户名' --verbose

7.最后通过终端push对应的podspec,完成开源项目支持Cocoapods下载的最后一步

pod trunk push 工程名字.podspec

成功的结果截图:

8.搜索pod库, 这时就可以搜索自己刚提交过的开源文件

pod search iOS_PSCategory

注意点:

可能出现的错误:

http://www.itstrike.cn/Question/799c4add-42e1-4641-8641-27a4a16a1236.html

更加详细请参考这篇博客:

https://juejin.im/entry/57982040d342d3005908b63e











创建podspec文件,为自己的项目添加pod支持的更多相关文章

  1. iOS开发-- 创建podspec文件,为自己的项目添加pod支持

    开篇扯淡 作为一个iOS开发者,一定用过CocoaPods吧,没用过?点这儿去面壁吧 Cocoapods作为iOS开发的包管理器,给我们的开发带来了极大的便利,而且越来越多的第三方类库支持Pod,可以 ...

  2. 如何使用vs将asp.net core项目添加容器支持并发布docker镜像到私有dockerhub和添加k8s/helm管理

    这篇文章介绍一下,如何使用VS2017给asp.net core添加容器支持,并发布镜像到私有docker hub,然后用chart管理容器镜像的操作流程. 话不多说,just do it. 新建项目 ...

  3. 为项目添加CUDA支持

    最近研究体绘制方面的东西,需要用到CUDA加速.从官网下载了CUDA 7.0(支持VS2013)装好后,VS2013中能直接创建CUDA项目,也可以在原有项目中添加cu文件. 进入正题,为已有项目添加 ...

  4. idea 项目添加web支持

    选中项目添加 add - web

  5. springboot项目添加jsp支持

    一.创建springboot项目 使用 http://start.spring.io/ 快速创建一个springboot项目下载并导入 二.添加依赖 在pom.xml中添加支持jsp的依赖如下: &l ...

  6. android studio: 为现有项目添加C++支持

    刚开始创建项目的时候并没有勾选“include C++ support” 选项: 后期增加步骤: 1.拷贝已有支持C++项目的CMakeLists.txt文件到现有项目的app目录下: 2.在app/ ...

  7. 为老的vueCli项目添加vite支持

    1.前言 接手公司的某个项目已经两年了,现在每次启动项目都接近1分钟,hmr也要好几秒的时间,but vite2发布之后就看到了曙光,但是一直没有动手进行升级,昨天终于忍不住了,升级之后几秒钟就完成了 ...

  8. Web项目添加Maven支持

    很多时候,进入到某个项目组,并非项目刚刚开始:同样,很多时候,项目并非一开始就有Maven支持: 对现有的项目支持Maven,需要修改以下地方: 1. 将以下代码拷贝到工程根路径下的  .projec ...

  9. 已有Web项目添加Maven支持

    IDE:MyEclipse 当我们在现有的Web开发项目中集成 Maven 的时候,需要修改以下几个地方: 1.将以下代码拷贝到工程根路径下的 .project 文件中的 <buildSpec& ...

随机推荐

  1. E - We Need More Bosses CodeForces - 1000E (tarjan缩点,树的直径)

    E - We Need More Bosses CodeForces - 1000E Your friend is developing a computer game. He has already ...

  2. kotlin函数和函数式表达式

    这次的写法可能有些怪异,但是如果熟悉java8的Lambda表达式的话其实理解起来很顺其自然[参考博客:http://www.cnblogs.com/webor2006/p/7705130.html] ...

  3. Linux——grep binary file

    原创声明:本文系博主原创文章,转载或引用请注明出处. grep命令是linux下常用的文本查找命令.当grep检索的文件是二进制文件时,grep命令会提示: $grep pattern filenam ...

  4. html2canvas-html图片合成-canvas生成图片

    作用 html2canvas可以通过纯JS对浏览器端经行截屏,但截图的精确度还有待提高,部分css不可识别,所以在canvas中不能完美呈现原画面样式 支持的浏览器 Firefox 3.5+ Goog ...

  5. MyBatis Generator 移除字段前缀

    在table标签内添加 <columnRenamingRule searchString="wrc_" replaceString=""/> < ...

  6. Python之import方法引入模块详解

    在python用import或者from-import或者from-import-as-来导入相应的模块,作用和使用方法与C语言的include头文件类似.其实就是引入某些成熟的函数库和成熟的方法,避 ...

  7. CSS3 animation属性 实现转动效果

    <!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8 ...

  8. 解决微信小程序textarea 里输入的文字或者是placeholder里的值,飘到弹出view上

    在uniapp微信小程序开发中使用textarea,结果发现输入框的问题浮动起来,view无法把他覆盖,设法设置index的值也不生效,所以只能是通过条件v-if或者v-show使其隐藏就可以了

  9. 配置https证书

    官网: https://certbot.eff.org/lets-encrypt/ubuntubionic-nginx ssl安装检测工具: https://www.myssl.cn/tools/ch ...

  10. luogu 1072 Hankson 的趣味题 唯一分解定理+线性筛

    貌似是比大多数题解优的 $O(n^2logn)$ ~ Code: #include <bits/stdc++.h> #define N 50004 #define setIO(s) fre ...