这两天准备把之前写的一些小玩意加入到pods库中去,參考了一些资料后进行操作,实际中也遇到了一些问题,记录下来。问题及解决方案在后面。

參考内容转载例如以下:

首先更新了用trunk之后,CocoaPods须要0.33版本号以上的,用 pod
--version查看。假设版本号低。须要更新,之前有介绍更新方法。

下一步注冊trunk

pod trunk register orta@cocoapods.org 'Orta Therox'
--description='macbook air'

你注冊的时候须要替换邮箱和名字。加上 --verbose 能够看到具体信息。

然后顺利的话你会收到一份邮件,须要点击验证。

pod trunk me//查看自己的注冊信息

当然。假设你的pod是由多人维护的,你也能够加入其它维护者

pod trunk add-owner ARAnalytics kyle@cocoapods.org

创建podspec

运行命令:

pod spec create HZWebViewController

会在当前文件夹下生成 HZWebViewController.podspec 文件。然后我们编辑这个文件。

podspec文件中面有非常多凝视。

我们看个样例

一眼看去就非常明确了。不用一一解释了。当然,这里的配置项远远多于这些。

ok这里配置完毕之后,须要把你的源代码push到github上,tag一个版本号号而且公布一个release版本号。这样podspec文件里的s.source的值才干是准确的。

这些操作也不属于本文的所研究的范畴。

提交

上面的工作完毕之后。我们就能够開始 trunk push 了

pod trunk push 命令会首先验证你本地的podspec文件(是否有错误),之后会上传spec文件到trunk,最后会将你上传的podspec文件转换为须要的json文件

第一步验证podspec文件也能够自己去做 pod spec lint Peanut.podspec

成功部署之后。CocoaPods会在Twitter上@你

我们能够看看我们提交的名字为:HZWebViewController的pod

pod search HZWebViewController

我们也能够在本地的 ~/.cocoapods 路径下看到,转换之后的json文件


实际操作中的问题:

1.pod验证本地podspec文件速度非常快,使用pod trunk me查看自己的信息也能非常快响应。可是当使用

pod trunk push命令时,须要很的有耐心,由于这步的操作实在是耗时太久。

2.push成功之后,我尝试使用pod search命令查找自己的控件,发现无法搜索到,后来发现提交之后,须要使用pod
setup命令进行库更新,实际更新时又是卡了非常久。最后还是通过FQVPN操作成功的。期间还遇到了CocoaPods was not able to update the`master`这种错误,最后通过删除之前的缓存 rm
-fr ~/.cocoapods/repos/master

再使用pod setup操作成功。

最后总结下操作步骤:

1.你的开源库公布之后。须要打上版本tag,否则兴许不能完毕

2.注冊pod trunk

pod trunk register xxx@xx'Your name' --description='macbook air'

2.cd到项目文件夹下,创建podspec文件

pod spec create YourPodProjectName

3.改动podspec文件里的相关信息。这非常重要,校验,不能有不论什么警告或错误

pod spec lint YourPodProjectName.podspec

4.公布到pod trunk

pod trunk push YourPodProjectName.podspec

5.更新pod库

pod setup

之后就能够搜索到并使用了。

公布自己的pods到CocoaPods trunk 及问题记录的更多相关文章

  1. 发布自己的pods到CocoaPods trunk 及问题记录

    这两天准备把之前写的一些小玩意添加到pods库中去,参考了一些资料后进行操作,实际中也遇到了一些问题,记录下来,问题及解决方式在后面. 参考内容转载如下: 首先更新了用trunk之后,CocoaPod ...

  2. 【原】iOS:手把手教你发布代码到CocoaPods(Trunk方式)

    Change Log: 2015.08.20 - 添加podspec文件更新方法 2015.08.19 - 首次发布 概述 关于CocoaPods的介绍不在本文的主题范围内,如果你是iOS开发者却不知 ...

  3. 手把手教你发布代码到CocoaPods(Trunk方式)-备用

    概述 关于CocoaPods的介绍不在本文的主题范围内,如果你是iOS开发者却不知道CocoaPods,那可能要面壁30秒了.直奔主题,这篇文章主要介绍如果把你的代码发布到CocoaPods代码库中, ...

  4. 使用 CocoaPods 遇到的问题记录

    1. 在 Terminal 输入 Cocoapods 命令时,有时会一直等待,出现“Performing a deep fetch of the `master` specs repo to impr ...

  5. [CocoaPods]使用Trunk进行设置

    CocoaPods Trunk CocoaPods Trunk是一种身份验证和CocoaPods API服务.要将新的或更新的库发布到CocoaPods以进行公开发布,您需要在Trunk中注册并在当前 ...

  6. 如何发布自己的开源框架到CocoaPods【转】

    在开发过程中,经常会使用到第三框架,我们通过一个pod install命令,很方便的就将第三方框架加到我们自己的项目中. 如果我们也想将自己写的组件或库开源出去,让别人也可以通过pod install ...

  7. 让自己写的项目支持Cocoapods管理

    学会使用别人的 Pods 依赖库以后, 你一定对创建自己的依赖库很有兴趣吧,现在我们一起来制作自己的Pods依赖库. 1.创建自己的 github 仓库 上图中标识出了6处地方 Repository ...

  8. (转)CocoaPods

    本文转自http://nshipster.cn/cocoapods/ 文明是建立在道路,桥梁,运河,下水道,管线,电线和光纤这些基础设施之上的.只要设计和施工得当,它们可以帮助社会成倍的发展. 唯一的 ...

  9. CocoaPods 详解之----更新篇

    CocoaPods 大概是 2011 年出现的开源组件管理工具(目前已支持 Objective-C 和 Swift),近年来普及率越来越高,几乎已是所有 Cocoa 开源项目的标配.另外,很多大点的团 ...

随机推荐

  1. Google C++ style guide——格式

    1.行长度 每一行代码字符数不超过80. 例外: 1)假设一行凝视包括了超过80字符的命令或URL,出于复制粘贴的方便能够超过80字符: 2)包括长路径的能够超出80列,尽量避免: 3)头文件保护能够 ...

  2. 使用android.graphics.Path类自绘制PopupWindow背景

    PopupWindow简单介绍 PopupWindow是悬浮在当前activity上的一个容器,用它能够展示随意的内容. PopupWindow跟位置有关的API有以下几个: showAsDropDo ...

  3. linux下使用convert命令修改图片分辨率【转】

    本文转载自:http://blog.csdn.net/mybelief321/article/details/9969949 Convert的resize子命令应该是在ImageMagick中使用较多 ...

  4. Java IO 基础

    早上复习了IO.NIO.AIO相关的概念,将其中一些要点记录一下. 从编程语言层面 BIO | NIO | AIO 以Java的角度,理解,linux c里也有AIO的概念(库),这些概念不知道什么原 ...

  5. vue --- 关于多个router-view视图组件,渲染同一页面

    vue.js多视图的使用,可以提高网页组件化,模块化 比如使用多视图,可以将网站页面封装header.footer.navbar等多个公共部分, 遇到修改公共部分的文案信息等数据的时候,不再需要逐一修 ...

  6. Api接口服务的设计和安全解决方案

    这个涉及到两个方面问题:一个是接口访问认证问题,主要解决谁可以使用接口(用户登录验证.来路验证)一个是数据数据传输安全,主要解决接口数据被监听(HTTPS安全传输.敏感内容加密.数字签名) 普通网站应 ...

  7. jQuery中文学习站点

    jQuery是一个快速.简单的Javascript library,它简化了HTML文件的traversing,事件处理.动画.Ajax互动,从而方便了网页制作的快速发展.jQuery是为改变你编写J ...

  8. [Reading] Asking while Reading

    Asking while Reading ——读Java垃圾收集器与内存分配策略 Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的“高墙”,墙外面的人想进去,墙里面的人却想出来. 为什么 ...

  9. DDD中Dto领域驱动设计概述,摘自《NET企业级应用架构设计》

  10. 在centos6.5上升级php-libxml版本到2.9.0

    当前系统,软件版本说明: php libxml glibc 2.12 zlib xz-libs 需求: 应开发的需求,线上环境,php-libxml版本升级到2.8以上. 升级步骤:1.安装工具集 y ...