美文网首页
pod 私有库搭建流程

pod 私有库搭建流程

作者: 悲伤C小调 | 来源:发表于2020-02-28 18:48 被阅读0次

    Pod私有库是什么:

    一个私有库包括:索引的私有仓库和源码的私有仓库。
    索引的私有仓库:索引仓库存放的是地址,地址指向的是源码仓库。
    源码的私有仓库:存放的是源码
    

    搭建步骤

    1.创建远程索引私有库

    这里就说明创建的过程了,百度很多资料也非常简单
    这里创建好的地址是:
    https://gitlab.xiaomingsport.com/xmsport/ios/QHiOSSpecs/xmbaseframeworkrepo.git 
    

    2.创建远程私有库

    这里创建好的地址是:
    https://gitlab.xiaomingsport.com/xmsport/ios/xmbaseframework.git
    

    3.在本地添加一个自己的远程索引库

    $ ~/.cocoapods/repos
    $ pod repo add XMBaseFrameworkRepo https://gitlab.xiaomingsport.com/xmsport/ios/QHiOSSpecs/xmbaseframeworkrepo.git 
    

    4.模板创建

    pod lib create XMBaseFramework
    

    将自己写好的东西放到模板提供的目录下面。下图所示(网图)


    1526030776844768.gif

    下图是放好的项目基础库 示意图


    image.png

    5.将制作好的组件上传至仓库

    $ cd  /Users/Lizhijun/Desktop/XMBaseFramework
    $ git remote add origin https://gitlab.xiaomingsport.com/xmsport/ios/xmbaseframework.git
    $ git push -u origin master
    
    $ git add .
    $ git commit  -m  '初始化'
    $ git push -u origin master
    

    6.更改模板文件相关信息

    下面是我这边设置的,可以参考下
    Pod::Spec.new do |s|
      s.name             = 'XMBaseFramework'
      s.version          = '1.0.1'
      s.summary          = 'XMBaseFramework.'
    
    # This description is used to generate tags and improve search results.
    #   * Think: What does it do? Why did you write it? What is the focus?
    #   * Try to keep it short, snappy and to the point.
    #   * Write the description between the DESC delimiters below.
    #   * Finally, don't worry about the indent, CocoaPods strips it!
    
      s.description      = <<-DESC
    TODO: 删除UIView+XMTouchArea .
                           DESC
    
      s.homepage         = 'https://gitlab.xiaomingsport.com/xmsport/ios/xmbaseframework'
      # s.screenshots     = 'www.example.com/screenshots_1', 'www.example.com/screenshots_2'
      s.license          = { :type => 'MIT', :file => 'LICENSE' }
      s.author           = { '志军李' => 'lizhijun@jmfen.cn' }
      s.source           = { :git => 'https://gitlab.xiaomingsport.com/xmsport/ios/xmbaseframework.git', :tag => s.version.to_s }
      # s.social_media_url = 'https://twitter.com/<TWITTER_USERNAME>'
    
      s.ios.deployment_target = '9.0'
    
      s.source_files = 'XMBaseFramework/Classes/**/*'
      
      # s.resource_bundles = {
      #   'XMBaseFramework' => ['XMBaseFramework/Assets/*.png']
      # }
    
      # s.public_header_files = 'Pod/Classes/**/*.h'
      # s.frameworks = 'UIKit', 'MapKit'
      # s.dependency 'AFNetworking', '~> 2.3'
    

    7.验证spec文件

    在创建好的模板工程 更目录执行下面的命令
    pod lib lint  --private
    或者
    pod lib lint  --private --verbose //与上面的却别verbose可以查看验证日志
    
    如果出现 error 必须处理掉 否则验证不通过
    如果有警告的话可以进行下面这条
    pod lib lint  --private --allow-warnings --verbose
    制作过程中遇到的问题
    1.工程编译不通过
    2. s.source文件填错导致找不到文件的报错
    

    8.给版本打一个标签(标签对应的就是pod 第三方库的版本号)

    查看有哪些tag
    git tag
    打标签
    git tag 1.0.1
    将标签推送到远程仓库
    git push --tags
    

    9.最后一步,建立关联

    pod repo push XMBaseFrameworkRepo XMBaseFramework.podspec
    如果有警告需要用下面的命令执行忽略掉警告
    pod repo push XMBaseFrameworkRepo XMBaseFramework.podspec --allow-warnings --verbose
    整个打印过程没有报错 恭喜说明私有库创建成功了
    
    使用的话 Podfile中添加创建好的私有库名称和版本号
    执行
    pod init
    pod install 
    

    注意的地方

    使用私有库:
    Podfile 文件内:
    pod  ‘frameWorksName’, :git=>’https://git.xxxxxxxx.git’, :branch=>’branchName’
    Branch 可以不要
    如果有相同的库名字,私有和公有,不指定git路径则pod的是公有的库,即使头部source 添加了路径。
    
    向外打包framewrok,而不是源码
        使用pod插件
        sudo gem install cocoapods-packager
        pod package 工程名.podspec —force
    

    相关文章

      网友评论

          本文标题:pod 私有库搭建流程

          本文链接:https://www.haomeiwen.com/subject/wjxrhhtx.html