1,在github上创建一个空仓库,要有licence和readme,clone到本地

2,pod lib create 项目名,这样就创建了一个静态库

3,pod spec create 项目名,创建一个pod描述文件   注意:git库必须打版本tag

4,pod lib lint 项目名.podspec ,验证pod项目正确性   如果已知连接失败,还是iOS 系统的库引用问题,加上  --use-libraries 即可

5,pod trunk push 项目名.podspec --allow-warnings

pod lib lint --use-libraries --verbose --allow-warnings  ,有些带c++库的,需要去掉 --use-libraries,但是如果用了subspec方式,有的需要 --use-libraries有的不需要怎么办?那就需要在配置的加上ss.library = 'c++'

6, 报branch错误,创建相应的分支推上去

7,source_files错误,修改文件路径

弄了一下午,一直卡在第7步!!!最后出来success的时候真激动的不行。。。

参考了俩博客,感谢这俩兄弟的奉献:

http://www.cnblogs.com/zhanglinfeng/p/6283178.html

http://www.cnblogs.com/marlonxlj/p/6062646.html

按照第一个步骤弄,出了问题看第二个博客。

重点:

如何更改pod trunk register 之后的用户名,官网的说法是重新register一次,但是根本不起作用,官网回答问题的地方是stack overflow,以下是我找到的新方法:

In terminal

grep -A2 'trunk.cocoapods.org' ~/.netrc

'Password' in response is your TOKEN. Copy it to clipboard. Then replace parameters in the following line and run it:

curl -v -H "Authorization: Token <MY CURRENT TOKEN>" -H "Content-Type: application/json" -X POST -d '{"email":"<MY EMAIL>","name":"<MY NEW NAME>","description":"<My DESCRIPTION>"}' https://trunk.cocoapods.org/api/v1/sessions

You will receive an e-mail. Follow the link in it.

DONE!

重点2:上传之后一直pod search不到,下面是解决办法

上传成功后,搜索不到, 记得 pod setup , 如果依然搜索不到,

终端输入rm ~/Library/Caches/CocoaPods/search_index.json

输出:Creating search index for spec repo 'master'.. Done!,稍等片刻就会出现

坑1:AFNetworking 打包成Framework之后上传到pod,出现ln连接问题,之后找到AFN的github项目,从他们的spec文件里找到依赖的所有ios framework加到s.frameworks 即可解决

s.frameworks = 'SystemConfiguration','Security','MobileCoreServices', 'CoreGraphics'

s.ios.vendored_frameworks = 'AFNetworking_bin/AFNetworking.framework'

私有库的创建:

# pod repo add #repo名# #远程仓库地址,如:pod repo add ymtSpecs git@git.xxx.net:iOSPods/ymtSpecs.git
# pod lib lint --sources='http://xxxx.com/xxx-public/Lib.git' --allow-warnings
# pod repo push Lib Lib.podspec --sources='http://xxx.com/xxx-public/Lib.git' --allow-warnings

source https://git.xxx.com/spec.git

创建cocoapod静态库发布到网上使用的更多相关文章

  1. iOS:Xcode7下创建 .a静态库 和 .framework静态库

    Xcode7 中创建静态库:.a 和 .framework 一.简单介绍 1.什么是库? 库是程序代码的集合,是共享程序代码的一种方式 2.库的分类 根据源代码的公开情况,库可以分为2种类型 (1)开 ...

  2. iOS 在工程内部创建一个静态库target

    当你在开发项目的时候需要把公用的东西打包出来,其他项目方便使用的时候,打包成静态库是你的最优选择,在工程内部开发的时候新建一个target进行静态库的开发可以使你的开发调试更加方便而不是单独新建一个工 ...

  3. VisualGDB系列7:使用VS创建Linux静态库和动态库

    根据VisualGDB官网(https://visualgdb.com)的帮助文档大致翻译而成.主要是作为个人学习记录.有错误的地方,Robin欢迎大家指正. 本文介绍如何在VS中创建静态库和动态库, ...

  4. Xcode 创建.a和framework静态库(转载)

    库介绍 库从本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行.库分静态库和动态库两种. iOS中的静态库有 .a 和 .framework两种形式:动态库有.dylib 和 .framew ...

  5. iOS静态库及Framework 创建

    本文转自cocoachina,尊重作者的汗水. 讲述的非常透彻,有需要的朋友可以阅读实践.转载请注明出处 //=================以下留着备份==================// 在 ...

  6. 经验分享:Xcode 创建.a和framework静态库【转】

    作者:Haley_Wong 最近因为项目中的聊天SDK,需要封装成静态库,所以实践了一下创建静态库的步骤,做下记录. 库介绍 库从本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行.库分静态 ...

  7. Xcode 创建.a和framework静态库

    库介绍 库从本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行.库分静态库和动态库两种. iOS中的静态库有 .a 和 .framework两种形式:动态库有.dylib 和 .framew ...

  8. 经验分享:Xcode 创建.a和framework静态库

    最近因为项目中的聊天SDK,需要封装成静态库,所以实践了一下创建静态库的步骤,做下记录. 库介绍 库从本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行.库分静态库和动态库两种. iOS中的 ...

  9. 使用CoApp创建NuGet C++静态库包

    NuGet是微软开发平台下的包管理软件,使用它你可以非常方便的将一些第三方的库.框架整合进自己的项目中,省去了不少麻烦的配置过程.但是从官方文档上来看,貌似NuGet对C++的支持不是很好,并且在现阶 ...

随机推荐

  1. iOS项目之交换方法(runtime)

    在项目中,经常会遇到系统自带的方法满足不了自己的需求,往往我们解决这种情况的时候,都是在分类中添加一个方法.然而很多时候,项目已经开发很长时间了,如果一个一个的去替换系统的方法,太浪费宝贵的时间,所以 ...

  2. Shell if条件语句

    1.if条件语句:设定一个条件如果怎么,然后怎么样. (1)-gt大于.-lt小于.-ge大于等于.-le小于等于.-eq等于.-ne不等于. (2)[]内是包括变量时所使用的. (3)-f文件.-n ...

  3. StringUtils工具类常用方法汇总(判空、转换、移除、替换、反转)

    Apache commons lang3包下的StringUtils工具类中封装了一些字符串操作的方法,非常实用,使用起来也非常方便.最近自己也经常在项目中使用到了里面的一些方法,在这里将常用的方法总 ...

  4. 【Python】【自动化测试】【pytest】【常用命令行选项】

    https://www.cnblogs.com/cnkemi/p/9989019.html http://www.cnblogs.com/cnkemi/p/10002788.html pytest 常 ...

  5. win8外包公司——技术分享:参数传递

    页面之间传递参数 windows phone 的参数传递和web 差不多.用“?”号传递 多个参数的时候用 “&”做分隔. 我接着昨天的项目继续添加一个FourPage.xaml 在昨天的Th ...

  6. CSS3 傻傻分不清楚的transition, transform 和 animation

    transition transition允许css的属性值在一定的时间区间内平滑地过渡,语法如下: transition : transition-property transition-durat ...

  7. 【六】jquery之HTML代码/文本/值[下拉列表框、多选框、单选框的选中]

    val()方法不仅能设置元素的值,同时也能获取元素的值.另外,val()方法还有另外一个用处,就是它能使select(下拉列表框).checkbox(多选框)和radio(单选框)相应的选项被选中,在 ...

  8. CSS实现输入框宽度随内容自适应效果

    有时候我们会遇到如下需求:输入框的宽度随内容长度自适应,当输入框宽度增大到一定值时,里边的内容自动隐藏. 面对这种需求,我们首先想到的是使用input元素标签,但是发现input标签的宽度默认设定的是 ...

  9. C#反射详解

    http://blog.csdn.net/educast/article/details/2894892(转) 两个现实中的例子:1.B超:大家体检的时候大概都做过B超吧,B超可以透过肚皮探测到你内脏 ...

  10. Bupt归队赛, gunfight

    只需要关心是否开枪,上个人和当前这个人的位置关系,转移可以前缀和优化 为了不重复,始终认为第一个就是1,最后答案乘以n #include<bits/stdc++.h> using name ...