pods 私有库

环境
pod 版本为: 1.2.0.beta.1
git托管用的:https://coding.net/

要搭建自己的私有仓库,需要用到两个东西:一个是代码,另一个是配置文件;代码就不多说了,主要说一下配置文件,这个文件是一个. podspec文件,里面设置了一些基本的信息,像:名称,简介,代码库地址等等。
既然需要两个东西,我们就一个一个来

1.代码

这个其实就比较简单了,既然想做私有库肯定有功能稳定,封装完善的代码。仅仅需要做的就是把代码放到一个你有权限访问的远程仓库,然后打上tag。获取代码的远程地址,保存一下,一会儿要用到。

2. podspec文件

这个文件就是一个配置文件,将来是需要下载到本地的。不过为了能够和小伙伴们共享,最好也放到一个远程仓库了,同时相当于备份了。

1、创建podspec

先cd到你要创建见podspec文件的目录下,然后创建podspec文件

pod spec create ${name}.podspec
2、修改 podspec的内容

刚创建出来的podspec 文件会有很多的设置项,我们可以选取我们需要的进行填写

Pod::Spec.new do |s|
  s.name         = "名称"
  s.version      = "0.0.1"  # 这里要和代码的tag保持一致,不然下面取源码的时候会获取不到
  s.summary      = "简介 "
  s.description  = "详细描述"
  s.homepage     = "放上你的主页地址"
  s.author       = { "你的名字" => "你的邮箱地址" }

  s.license      = { :type => 'MIT'} #这里就这样写
  s.platform     = :ios
  #这里的地址就是源码的地址
  s.source       = { :git => "源码地址", :tag => "#{s.version}" }

  s.source_files  =  "*.{h,m}"
end

设置完之后最好验证一下

pod spec lint ${name}.podspec

如果有错误就找到对应的地方修改一下,直到没有错误为止。

然后就可以把podspec文件上传到远程仓库了,仓库的结构设置成这样

├── Specs  
    └── [SPEC_NAME]  
        └── [VERSION]  
            └── [SPEC_NAME].podspec

设置好之后就可以上传到远程仓库了。

3、将私有的repo添加到CocoaPods
pod repo add ${REPO_NAME} ${SOURCE_URL}

添加之后可以到 .cocoapod/repo/下看一下,是否已经添加进来。
然后再验证一下看是否有问题

$ cd ~/.cocoapods/repos/REPO_NAME  
$ pod repo lint ${REPO_NAME}

目前为止私有仓库已经搭建完成了,可以搜索一下,能搜到的话就妥妥的没问题了

pod search ${name}

建个工程试一下吧

创建项目 -> 添加podfile -> 编辑podfile

podfile文件内容

source '私有pods地址'
source 'https://github.com/CocoaPods/Specs.git' 

platform :ios, '8.0'
pod 'name','~>0.0.1'

4、安装pod
pod install 

如果没有什么问题的话就是成功了。


3.后续

1.添加新的库

1、上传源码,打tag
2、创建podspec上传到仓库
3、更新本地私有仓库

pod repo update ${REPO_NAME}
2.共享给小伙伴

别的小伙伴想用你的私有仓库的话可以将私有的repo添加到他的CocoaPods。然后设置podfile文件就可以了,添加新的仓库源地址就可以了。

3.如果需要依赖别的第三方库

假如你的私有库需要依赖AFNetworking,在podspec设置依赖。当你在使用的时候,如果你的项目里已经有AFNetworking,那就直接使用,如果没有会自动添加进来。

s.dependency   'AFNetworking', '~> 3.1.0'

参考:
http://www.cocoachina.com/ios/20150508/11785.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容