美文网首页
podspecs文件说明

podspecs文件说明

作者: 骑马纵天下 | 来源:发表于2019-08-23 13:26 被阅读0次
Pod::Spec.new do |s|
#  CocoaPods所有关键字 库名
  s.name             = 'HuPublicClassKit'
#   当前库的版本号
  s.version          = '0.0.3'
#  库的简略描述
  s.summary          = 'zhejiangweishengjaindusuo.'

# 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: Add long description of the pod here.
                       DESC
# 组件的主页地址
  s.homepage         = 'http://gitlab.317hu.com/HuModularizationLibrary/HuPublicClas'
  # s.screenshots     = 'www.example.com/screenshots_1', 'www.example.com/screenshots_2'
#  许可证
  s.license          = { :type => 'MIT', :file => 'LICENSE' }
#  作者
  s.author           = { '15670967649' => 'huanghp@317hu.com' }
#  组件的远端地址
  s.source           = { :git => 'git@gitlab.317hu.com:HuModularizationLibrary/HuPublicClassKit.git', :tag => s.version.to_s }
  # s.social_media_url = 'https://twitter.com/<TWITTER_USERNAME>'

  s.ios.deployment_target = '8.0'
# 组件源码文件配置路径
  s.source_files = 'HuPublicClassKit/Classes/*'
# 组件头文件
  s.public_header_files = 'HuPublicClassKit/Classes/*.h'
# 组件pch文件
  s.prefix_header_contents = '#import <HuConfigsKit/HuConfigsHeader.h>','#import <MJExtension/MJExtension.h>','#import <HuUtilsKit/HuUtilsHeader.h>','#import <HuCategoryKit/HuCategoryHead.h>','#import <HuMainProjectCategoryKit/CTMediator+HuMainProjectCategory.h>','#import <MJRefresh/MJRefresh.h>','#import <SDWebImage/UIImageView+WebCache.h>','#import <Masonry/Masonry.h>'

#  组件源码的分层 或者叫子规格 子库 如果源码全部在Classes下就不需要这个 如果我们想要在当前组件下再去细分 如果当前组件是个HTTP请求组件分为 post或者get get post可以设置为子库
  s.subspec 'HuPublicClass' do |ss|
    
    ss.subspec 'Models' do |sss|
      sss.source_files = 'HuPublicClassKit/Classes/HuPublicClass/Models/*'
    end
    
    ss.subspec 'Views' do |sss|
      sss.dependency 'HuPublicClassKit/HuPublicClass/Models'
      sss.source_files = 'HuPublicClassKit/Classes/HuPublicClass/Views/*'
    end
    
    ss.subspec 'ViewControllers' do |sss|
#      不是真实路径依赖 比如说ViewControllers依赖了Views,Views依赖了Models,所以不需要在写依赖Models
      sss.dependency 'HuPublicClassKit/HuPublicClass/Models'
      sss.dependency 'HuPublicClassKit/HuPublicClass/Views'
      sss.source_files = 'HuPublicClassKit/Classes/HuPublicClass/ViewControllers/*'
      end
  end
# 组件资源文件的配置路径
  #s.resource_bundles = {
  #  'HuPublicClassKit' => ['HuPublicClassKit/Assets/*']
  #}
# 组件源码头文件配置路径
  # s.public_header_files = 'Pod/Classes/**/*.h'
#  组件系统框架依赖库
  # s.frameworks = 'UIKit', 'MapKit'
#  组件依赖的第三方l框架
  # s.dependency 'AFNetworking', '~> 2.3'
  s.dependency 'HuUtilsKit'
  s.dependency 'TFDropDownMenu'
  s.dependency 'HuConfigsKit'
  s.dependency 'MJExtension', '~> 3.0.13'
end

子库subspec

比如HuPublicClassKit这个库,它里面有很多子库,我们只需要ViewControllers这个子库,那我们只需导入它的HuPublicClassKit/HuPublicClass/ViewControllers就行。ViewControllers就是它的子库。其中HuPublicClass这个文件夹,我是为了层级才加的。如果是功能性的组件,是一个功能是一个子库如SDWebImage。我这个是业务组件。

HuPublicClassKit SDWebImage

设置子库的格式

s.subspec '子库名称' do |ss(别名)| 
    //设置依赖 是视图控制器上肯定要加视图 所以 视图控制器肯定会依赖Views子库 同时ViewControllers也需要依赖Models子库 但是Views子库已经写过依赖了 所以这个地方不写也可以
    ss.dependency 'HuPublicClassKit/HuPublicClass/Views'
    //子库的路径
    ss.source_files = 'HuPublicClassKit/Classes/HuPublicClass/ViewControllers/*'
end

或者也可以这样写

s.subspec 'ViewControllers' do |ss|
  ss.dependency 'HuPublicClassKit/HuPublicClass/Views'
  ss.source_files = 'HuPublicClassKit/Classes/HuPublicClass/ViewControllers/*'
end

s.subspec 'Views' do |ss|
  ss.dependency 'HuPublicClassKit/HuPublicClass/Models'
  ss.source_files = 'HuPublicClassKit/Classes/HuPublicClass/Views/*'
end

安装

  pod 'HuPublicClassKit/HuPublicClass/Models'

相关文章

  • podspecs文件说明

    子库subspec 比如HuPublicClassKit这个库,它里面有很多子库,我们只需要ViewControl...

  • 最新iOS组件化之pod私有库

    远程索引库: 存在一个公共的远程索引库,包含所有三方框架的.podspec文件,在.podspecs文件中包括了框...

  • day 15【操作系统文件属性】

    一.文件属性详细说明----文件的权限说明 文件数据权限有什么: 二.文件属性详细说明-----文件得用户信息 系...

  • iOS组件化-私有podSpecs

    最近在学习vue.js的时候发现,vue的组件化的思想对于编写代码是一个非常有用的事情。 首先为什么需要组件化? ...

  • Linux的一些基础知识和基本操作

    创建用户 文件夹的基本操作 文件的基本操作 文件属性说明 文件权限说明 [ - ] :文件类型 [r...

  • iOS上传和下载文件

    说明 .h文件 .m文件

  • 项目文件说明

    cate:每个类别的groundtruth文件(t7格式),用于测试检测模型对每个类别的准确率。(目前有train...

  • Git 文件说明

    Git 忽略提交 .gitignore .gitigonre你想要忽略的文件或者目录 /mtk/ 过滤整个文件夹 ...

  • vue 文件说明

    |-pages 业务页面文件存放的目录| |-index| |...

  • vcf文件说明

    1. 什么是VCFCVF是用于描述SNP,INDEL和SV结果的文本文件。做过DNA重测序,群体遗传进化,BSA,...

网友评论

      本文标题:podspecs文件说明

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