iOS 创建pod私有库

这里介绍下如何让自己所整理的东西可以让pod引入,主要内容很简单,但是请注意步骤和细节,胆大心细跟我走~

1.New repository

首先在Github上New一个repository。这里注意,在新建的时候,要添加license。还有最好创建README,README支持Markdown语法,用于说明自己的库很方便。 在这安利一个软件 Typora

第一步,New repository

2.将Demo和私有库上传到Github上

我们需要先创建一个本地库,然后将代码拉下来,将自己的库和Demo添加上,并在README文件中用Markdown语法做出简单的说明。

注意:这个时候是没有.podspec文件的
本地库的文件

3.创建.podspec文件

问题基本上出现在这一步,其中很大一个原因是路径问题,在这希望能给各位做一个参考

这里执行命令创建.podspec文件

pod spec create **** // 你的库名称
Pod::Spec.new do |s|
  s.name         = "TSCategory"   //私有库的名称
  s.version      = "0.0.2"   //版本号
  s.summary      = "all kinds of categories for iOS develop"  //概述
  s.description  = <<-DESC
                      this project provide all kinds of categories for iOS developer   //描述
                   DESC
  s.homepage     = "https://github.com/TonyShng/TSCategory"  //git上的地址
  s.license      = "MIT"   //许可证
  s.license      = { :type => "MIT", :file => "LICENSE" }   //许可证
  s.author             = { "TonyShng" => "wangzhe92824@qq.com" }   //作者名以及邮箱
  s.platform     = :ios
  s.platform     = :ios, "7.0"

  s.source       = { :git => "https://github.com/TonyShng/TSCategory.git", :tag => "0.0.2" }   //这个是git上   releases的代码,以后每次版本升级,都会传到这里

  s.source_files  = "TSCategory", "TSCategory/**/*.{h,m}"   //路径 前面的表示私有库名,后面表示私有库中的内容

  s.exclude_files = "Classes/Exclude"

  s.public_header_files = "TSCategory/UIKit/TS_UICategories.h", "TSCategory/**/*.h"   //前面表示使用私有库要引入的头文件,后面表示头文件中所引用的头文件的路径 ~~很绕,下面有图

  s.requires_arc = true   //支持ARC
end

这个路径希望能够对照着来进行修改,在没有提交.podspec文件前都可以修改,但是提交之后,修改之后需要修改版本号,才能重新提交。

路径

4.验证podspec文件并提交
pod lib lint ****.podspec // .podspec文件名

如果出现

-> ****(0.0.1) // 库名

**** passed validation. // 库名

说明本地验证通过,有警告的话是不要紧的,可以通过命令屏蔽警告

pod lib lint --allow-warnings

如果出现Error但是提示信息不足,可以添加--verbose 以获取更多错误信息

pod lib lint --verbose
5.上传podspec

这一步需要指定tag

git tag -m"描述" "0.0.1"  // 
git push --tags  // 上传到git releases中

版本号和描述

6.注册Cocoapods账号
pod trunk register 邮箱地址 ‘用户名’ —description='描述信息'

注册信息

黄色提醒则表示已经发送验证码到邮箱,这是需要到邮箱点击链接激活即可。这样便成功注册了Cocoapods的账号。

pod trunk me // 验证注册是否成功
7.上传代码到CocoaPods
pod spec lint   // 检测文件格式的有效性  有警告,可以使用 —allow-warnings忽略

这里我之前有遇到路径问题,但是本地检测即 pod lib lint 没有问题。 这里有解决方式 .podspec error - source_files` pattern did not match any file

如果没有问题的话

pod trunk push ****.podspec —allow-warnings

等上一会,结果就会出现

结果

当这个出现的时候,表示已经上传成功!恭喜。

然后这个时候让我们来搜索一下吧~

pod search ****

等等,为啥没有???

附上最后一个命令

rm ~/Library/Caches/CocoaPods/search_index.json 

然后在搜索一次,应该就可以了~

参考资料

http://www.jianshu.com/p/d7d1942dd3f1
http://www.cnblogs.com/zhanggui/p/6003481.html
http://www.cnblogs.com/wengzilin/p/4742530.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值