这两天准备把之前写的一些小玩意加入到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. java之 ------ 设计思想

    java的设计思想 (设计思想.是须要不断领悟的.. . ) 一.封装 学java的人都知道这是向对象的编程语言,从字面上理解,就是针对对象的一些操作,将具有某一特性的实体封装成一个类或者是将具有一定 ...

  2. 连载:面向对象葵花宝典:思想、技巧与实践(30) - SRP原则

    前面具体阐述了"高内聚低耦合"的整体设计原则.但怎样让设计满足这个原则,并非一件简单的事情.幸好各位前辈和大牛已经帮我们归纳总结出来了,这就是"设计原则"和&q ...

  3. 创建多线程的HttpClient

    在实际的应用中,我们的联网应用程序里应该有一个HttpClient,并将其用于所有的HTTP通信.这就可能在同一个Http Client同时发出多个请求,也就产生了多线程的问题.幸运的是,在HttpC ...

  4. Win+X

    Win+X 方便的快捷键,可以快速使用命令行和运行!

  5. 新东方雅思词汇---6.1、oppose

    新东方雅思词汇---6.1.oppose 一.总结 一句话总结:op(相反)+pos(放) 英 [ə'pəʊz]  美 [ə'poz]  vt. 反对:对抗,抗争 vi. 反对 [ 过去式 oppos ...

  6. 如何在ubuntu中安装mysql与mysql workbench

    安装过程如下 sudo apt-get install mysql-server 安装过程中随后设置mysql的密码 之后sudo apt-get install mysql-client 安装好之后 ...

  7. dp入门(先摆在这里,之后细细读)

    网址转载链接:  http://bbs.chinaunix.net/thread-4094539-1-1.html 动态规划:从新手到专家 Hawstein翻译 前言 我们遇到的问题中,有很大一部分可 ...

  8. jsp+jdbc实现用户登录

    1.1 创建数据库表 表名:user 字段: userid   保存用户的登录id name     用户名 password 密码 1.2 实现思路 a. 用户登录,则需要有个一个表单页,此页面可输 ...

  9. 多进程Socket_Client

    from socket import * #导入套接字模块的所有命令import struct #导入struck模块,用于封装数据流长度# from functools import partial ...

  10. 《Exception》第八次团队作业:Alpha冲刺(大结局)

    一.项目基本介绍 项目 内容 这个作业属于哪个课程 任课教师博客主页链接 这个作业的要求在哪里 作业链接地址 团队名称 Exception 作业学习目标 1.掌握软件测试基础技术.2.学习迭代式增量软 ...