http://www.jianshu.com/p/d6a592d6fced

1.创建两个什么都不选的远程仓库:(私有公有都可,ReadMe\ignore都不选),一个放代码,一个放源(*.podspec)

2.创建/使用已有NCKSpecs仓库

1.pod repo add NCKSpecs https://github.com/NicolasKim/NCKSpecs.git (替换NCKSpecs 为自己的,以及后面地址为你的源的git地址)
2.pod repo

3.1. 创建NCKFoundation pods以及DEMO工程

pod lib create NCKFoundation (替换NCKFoundation 为你自己的工具名用来以后pod导,例如pod 'MJRefresh' 中的MJRefresh)

4.在终端进入到Example目录下

pod install

pod install

5.检查
1.后退到podspec文件存在的目录下,输入一下命令:
pod lib lint
pod lib lint --allow-warnings
(提示:NCKFoundation passed validation.)一般是快成功了
常见问题:
1.verify_minimum_git_version!': [!] You need at least git version 1.8.5 to use CocoaPods (Pod::Informative)
from /Library/Ruby/Gems/2.0.0/gems/cocoapods-1.2.0/lib/cocoapods/command.rb:49:in
run
解决方法:修改链接Xcode路径,命令是:
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
(sudo xcode-select -switch /Xcode应用所在的文件路径/Contents/Developer)
2.Error:Could not find a device to launch. You requested 'iOS (iOS)', but the available devices were: ["iPad 2 (9.2) - Support - Appium Discuss
解决方法:1.同上
  2.删除多余的Xcode版本

6.将工程上传的git仓库,并创建tag。
先上传,后加tag,tag必须通过终端加 git add .
$ git commit -s -m "Initial Commit of Library"
$ git remote add origin git@coding.net:wtlucky/podTestLibrary.git           #添加远端仓库
$ git push origin master     #提交到远端仓库
因为podspec文件中获取Git版本控制的项目还需要tag号,所以我们要打上一个tag, $ git tag -m "first release" "0.1.0"
$ git push --tags     #推送tag到远端仓库 7.检查
pod spec lint --allow-warnings
8.上传到源仓库
pod repo push NCKSpecs NCKFoundation.podspec --allow-warnings (你前面取的名字,和你工程里的那个 XXX.podspec名字)

9.大功告成


10.使用
podfile里面添加你的源地址和官方地址
source '你的源地址'
source 'https://github.com/CocoaPods/Specs.git'//官方地址
然后就
正常导三方一样使用吧!
 
私有库引用第三方库时候,头文件在。h里导入会报错,一般在.m里导入

如果在。h导入了,验证用这句pod lib lint xxx.podspec --use-libraries
推用
pod repo push Tool xxx.podspec  --use-libraries
11.显示子文件夹
s.subspec 'XXXXX' do |ss|
ss.ios.deployment_target = '8.0'
ss.dependency 'YogaKit'//子文件夹的依赖 #ss.public_header_files = '子文件夹名字/**/*.h'
ss.source_files = '文件夹名字/Classes/文件夹名字/*.{h,m}'
 
 
 

Cocoapods私有库的更多相关文章

  1. iOS:最详细的创建CocoaPods私有库教程

    一.感慨 说实话,创建这个CocoaPods私有库,我愣是搞了两个星期,创建的过程中,自己的感情波动是这样的:激情四射---->有点困惑----->极度困惑----->有点失望--- ...

  2. 从零开始创建CocoaPods私有库

    为什么要创建CocoaPods私有库? 避免重复的造轮子 节约时间,方便管理自己的代码 精益求精 创建CocoaPods私有库 1.创建私有仓库工程 执行命令pod lib create SmartB ...

  3. macOS sierra 10.12 Cocoapods 私有库

    使用Cocoapods创建私有podspec 见文章:http://www.cocoachina.com/ios/20150228/11206.html 或http://blog.wtlucky.co ...

  4. 工具第二天 cocoaPods 私有库的创建

    之前介绍了cocoaPods的安装与使用,今天简单谈一下 自己的私有库运用cocoaPods依赖. cd到需要做库的工程目录下 创建一个podspec文件 创建:pod spec create 名称 ...

  5. 通过构建Cocoapods私有库进行组件化开发探索

    专题一 一.创建私有索引库 选Github或者码云都可以,本例以Github为例.创建私有索引库用来作为自己组件库的索引: 二.本地添加私有索引库 添加:pod repo add 索引库名称 索引库地 ...

  6. 创建Cocoapods私有库

    本文以自己在公司做的一个手势密码私有库GesturePasswordKit为例说明. 1.在gitlab(或者github,我这里使用的例子是在gitlab上)上创建git仓库 (确保授权正确,避免后 ...

  7. CocoaPods私有库!!!!!!!!!!!(装逼特技)

    1http://www.jianshu.com/p/4b63dfbd8be7 2  修改工程下的.podspec文件,如 注意1: 验证库是否正确: pod lib lint --verbose -- ...

  8. 制作CocoaPods公有库和私有库

    认识公有库和私有库 公有库:开源自己封装的库供别人使用,且往cocoaPods的官方Repo仓库(即CocoaPods Master Repo)中新增自己库的索引,该库索引是以*.podspec.js ...

  9. 利用Cocoapods、SVN 创建私有库实现方案(yoowei)

    由于项目年后要进行组件化,考虑到如果公司内部实现一些私有的组件,不对外公开,而又想在不同项目中使用,该怎么办呢? 使用Cocoapods制作私有库就完美的解决了这个问题.下图就是使用私有库带给我们的好 ...

随机推荐

  1. 十、封装assertResponse响应断言

    一.assertNotNull介绍 assertNotNull(responseEntity.getBody());可判断报文是否为空 responseEntity为响应实体对象 二.assertEq ...

  2. [go]从os.Stdin探究文件类源码

    咋一看go的标准输入输出函数有一箩筐. 细究了一下. - 从标准输入获取输入 fmt.Scan 以空白(空格或换行)分割,值满后无结束 fmt.Scanln 以空格作为分割,遇到换行结束 fmt.Sc ...

  3. 链表反转 C++

    ListNode* reverse1(ListNode* pHead) { if(pHead == NULL) return NULL; ListNode * p1 = NULL; ListNode ...

  4. [Err] ORA-00942: table or view does not exist

    [Err] ORA-00942: table or view does not exist 当前用户加表明 例如:SCOTT."replyInfo"

  5. centos6密钥验证

    密钥验证: 公钥(服务器上)私钥(客户端)在远程登录软件上可生成SSH密钥对.在服务器上建目录.SSH 再在其中建文件authorized_keys,复制公钥到服务器上此文件中. (1)selinux ...

  6. spring_quartz的实现

    一.在spring配置文件中引用对应的定时任务配置文件 二.定义定时任务的业务代码 三.配置定时任务配置文件spring-quartz.xml <?xml version="1.0&q ...

  7. 利用java执行shell脚本

    BPMN中存在由系统执行的脚本任务,shell脚本任务也是该系统任务脚本中的一种,利用的也是由java执行shell脚本. 代码中的ProcessBuilder类,为java.lang.Process ...

  8. CSS练习-导航栏斜线分隔-利用伪元素

    开始切第一张图了,第一个遇到的问题是顶部导航栏这里,用斜线分割.想到的思路是用伪类:before或者:after实现 先写html结构. <!-- 导航栏begin --> <div ...

  9. java程序 避免重复启动的方法

    http://www.cppblog.com/biao/archive/2010/12/23/137254.html package swingtest; import java.io.File; i ...

  10. 记一次 Vultr配置

    这里不想排版,因为心情复杂. 第一次搞这个VPS,真的是很气人,由于中英文的关系我一开始就误操作了,让VPS一直挂载着Ubuntu18.10,所以系统一直是在光盘的引导界面,这个问题知道我注册后的四个 ...