美文网首页
组件化三:远程私有库

组件化三:远程私有库

作者: 我有一只小毛驴_从来都不骑 | 来源:发表于2019-03-01 16:28 被阅读3次

    远程私有库跟本地私有库的区别就是

    直接pod 'TextLib',   不要要后面:path => 'TextLib'
    

    先看看那远程私有库的原理

    image
    一般来说 把spec文件提交到远程,再通过pod setup 安装到本地,红色的线路图,但是实际开发中 是把spec提交到 本地的spec中,再同步到远程
    

    先创建一个远程的库,把本地的库关联到远程的库中,然后修改spec文件

    Pod::Spec.new do |s|
      s.name             = 'BaseUI'
      s.version          = '0.4.0'
      s.summary          = 'BaseUI.'
    
    
      s.description      = 'BaseUI的描述'
    
      s.homepage         = 'https://gitee.com/XBG123'//远程会验证这个地址,要能打开
      # s.screenshots     = 'www.example.com/screenshots_1', 'www.example.com/screenshots_2'
      s.license          = { :type => 'MIT', :file => 'LICENSE' }
      s.author           = { '18730261828@163.com' => '18730261828@163.com' }
      s.source           = { :git => 'https://gitee.com/XBG123/BaseUI.git', :tag => s.version.to_s }//代码源地址
      # s.social_media_url = 'https://twitter.com/<TWITTER_USERNAME>'
    
      s.ios.deployment_target = '8.0'
    
      #s.source_files = 'BaseUI/Classes/**/*','BaseUI/Classes/*','BaseUI/Classes/**/**/*'
      
      s.subspec 'HBCategory' do |z|
          z.source_files = 'BaseUI/Classes/HBCategory/**/*'
      end 
      
      # s.resource_bundles = {
      #   'BaseUI' => ['BaseUI/Assets/*.png']
      # }//主要是加载bundle的 比如 图片,storybord
    
      # s.public_header_files = 'Pod/Classes/**/*.h'
      # s.frameworks = 'UIKit', 'MapKit'
      # s.dependency 'AFNetworking', '~> 2.3'
    end
    

    修改完以后提交到git,同时也要提交tag

    git tag '版本号'
    git push --tags
    

    然后把sepc文件上传到私有库中的spec文件中

    pod repo push 自己私有的spec文件名字  自己私有库的podspec文件
    

    还要验证spec文件

    pod lib lint 验证本地私有库
    pod repo lint 验证远程私有库
    

    这样就可以使用了
    如果pod search 找不到私有库的名字,可以前往~/Library/Caches/CocoaPods 里面有一个search_index.json文件,把它删除,再pod search 就能找到了

    遇到的问题

    使用的时候加上在podfile文件的顶部 加上自己的私有库源地址 pod repo 可以查看到自己的私有库下面的url就是自己的私有库地址,还有cocoapods自带的源地址,例如:

    source 'https://github.com/CocoaPods/Specs.git'
    source 'https://github.com/hengHaibo/Spec.git'
    
    platform :ios, '9.0'
    target 'cesh' do
     pod 'HBBaseTool', '~> 0.3.0'
    end
    

    不加那个源 可能会报找不到索引去下载
    自己的开源库:https://github.com/hengHaibo/HBBaseTool 欢迎大家添加自己收藏的分类和工具

    相关文章

      网友评论

          本文标题:组件化三:远程私有库

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