这两天准备把之前写的一些小玩意加入到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. android开发一些小bug

    1.一定要注意findViewId这种方法,尤其是含有多个同样的R.id的名字时,debug时不会当场报错.但随后会报空指针错误 2.List转换为Array能够这样处理: ArrayList< ...

  2. Shiro 学习应用(续)

    在前面的文章中为大家介绍了 Shrio 的基础概念.可能比較笼统.没有深入到开发过程的一些问题.如今集中在本帖中归纳一下有关问题. FormAuthenticationFilter 表单过滤器 表单过 ...

  3. BZOJ 2751 容易题(easy) 快速幂+快速乘

    2751: [HAOI2012]容易题(easy) Description 为了使得大家高兴,小Q特意出个自认为的简单题(easy)来满足大家,这道简单题是描述如下:有一个数列A已知对于所有的A[i] ...

  4. System.DirectoryServices Namespace

    https://docs.microsoft.com/en-us/dotnet/api/system.directoryservices?view=netframework-4.7 The Syste ...

  5. 蓝桥杯--算法提高 排列数 (简单dfs)

    算法提高 排列数   时间限制:1.0s   内存限制:256.0MB      问题描述 0.1.2三个数字的全排列有六种,按照字母序排列如下: 012.021.102.120.201.210 输入 ...

  6. 敏捷开发 —— TDD(测试驱动开发)

    测试驱动开发 TDD(Test-Driven Development)是敏捷开发的一项核心实践,同时也是一种设计技术和方法. 既然是测试驱动,便是测试,测试用例先行: 首先编写好测试用例,期待值,实际 ...

  7. c++ set_union set_intersection使用

    自定义类型也可以构造set,但同样必须定义“小于”运算符,set中的元素从小到大排列好了 #include<iostream>#include<string>#include ...

  8. solarwinds之配置系统管理(System manager)

    配置windows的 1.  打开System Manager   2.  点击new新加一个接口   3.  选择要监控的资源   4.  确认好自己要监控的资源后如下   5.  这里以监控内存使 ...

  9. C++快速读取大文件

    debug的时候需要等很长时间读模型,查资料发现了两种快速读取大文件的方法. test 1:每次读一个字符串 test 2.3一次读取整个文件 {//test 1 string buf; clock_ ...

  10. 记一次redis-cluster的切换

    # redis-cli -h 10.5.8.18 -c -p 8001 cluster nodes|grep master 6d2f817064a10631648f24f450a37237b3d53f ...