美文网首页swift编程开发iTunes 发布相关Swift编程
CocoaPods-3.podspec文件的说明和编辑

CocoaPods-3.podspec文件的说明和编辑

作者: Mccc_ | 来源:发表于2018-11-16 13:44 被阅读1次

一. 什么是podspec文件?

  • podspec中spec的全称是“Specification”,说明书的意思。顾名思义,这是用来描述这个库说明信息的文件。
  • podspec是cocoaPods的一种文件格式,有一套自己的语法,我们可以到cocoaPods官网进行详细了解。
  • podspec描述了一个pod库的版本。它包括有关应从何处获取源、使用什么文件、应用的构建设置以及其他一般元数据(如其名称、版本和描述)的详细信息。

二. 本地的specs文件夹的理解?

终端执行 open ~/.cocoapods/repos 打开本地的repos文件夹。

本地repos介绍

repos 里面的文件夹分为两类:
两种的最大区别在于存放podspec文件的仓库谁

  • pod的公有库,即master文件夹。
    将自己的podspec文件发送到'https://github.com/CocoaPods/Specs.git' #官方仓库地址里面。即可让大家一起使用。比如常见的第三方AFNetworking.

  • 个人的私有库,即非master的其他文件夹
    这些私有库都有一个仓库去维护。比如myRepo文件。1.0文件夹名字就是对应的版本号(每发布一次就会记录对应的版本),里面的Users.podspec就是对应的库podspec文件。


    私有库

三. 如何创建podspec文件?

  1. pod spec create XXX
    pod spec create MCViewController (在项目根目录下)
  2. 会在项目目录中生成一个XXX.podsepc文件

四.如何编写podspec文件?

  1. 右击 --> 打开方式 --> 其他 --> Xcode打开
  2. 常用的基本信息
name:框架名
version:当前版本(注意,是当前版本,假如你后续更新了新版本,需要修改此处)
summary:简要描述,在pod search的时候会显示该信息。
description:详细描述
homepage:页面链接
license:开源协议
author:作者
source:源码git地址
source_files:源文件(可以包含.h和.m)
platform:支持最低ios版本
public_header_files:头文件(.h文件)
resources:资源文件(配置的文件都会被放到mainBundle中)
resource_bundles:资源文件(配置的文件会放到你自己指定的bundle中)

frameworks:依赖的系统框架
vendored_frameworks:依赖的非系统框架
libraries:依赖的系统库
vendored_libraries:依赖的非系统的静态库
dependency:依赖的三方库

swift_version : swift对应的版本

你在三方库中看到的那些文件都是通过这些配置来确定的。当pod install引入三方库时,只会引入你在podspec中配置的那些文件。pods会根据对应的路径去下载对应文件。

示例说明:

Pod::Spec.new do |s|
s.name         = "User"
s.version      = "1.3"
s.summary      = "组件化 用户模块"
s.homepage     = "https://gitee.com/modularComponents/User"
s.license      = "MIT"
s.author       = { "MC" => "562863544@qq.com" }
s.platform     = :ios, "8.0"
s.source       = { :git => "https://gitee.com/modularComponents/User.git", :tag => "1.3" }
s.source_files = "User/User/**/*"
s.ios.deployment_target = '8.0'
s.swift_version = '4.2'
s.frameworks = 'UIKit'
s.dependency 'MCPageViewController'
s.dependency 'SnapKit'
end

主要说明几个点:

1. source_files
  • source_files代表在source对应的路径下,源文件的路径。

  • 文件路径是以.podspec文件所在层级开始的。

  • 比如该文件路径

    文件路径
    对应的是s.source_files = "User/User/**/*"。 意思是需要将items和Reuse目录以及子目录下的文件作为源文件。
  • source_files写法说明

 source_files = 'User/User/Reuse.swift' // 直接指定Reuse文件夹名下的所有`.swift`文件
或:
source_files = 'User/User/**/*'      `**/*`表示podName目录及其子目录下所有文件,
  如果需要在项目中分组显示,这里也要做相应的设置(注意: 这个是物理路径,不是Xcode的项目里的路径)
2. dependency 依赖三方的配置
  1. 依赖公共库。
    s.dependency 'SnapKit' #当前依赖库,pod install时会自动下载该库(注意:没有=)
  2. 依赖私有库。
    s.dependency 'MCPageViewController'
  3. 如果有依赖库情况,检验podspec文件不通过的情况。请使用:
    pod spec lint --sources='spec仓库的地址 如有多个用,隔开。如果公有库,地址写https://github.com/CocoaPods/Specs.git
    比如依赖了两个库MCPageViewController (私有)SnapKit (共有)
    pod spec lint --sources='https://github.com/mancongiOS/MCPageViewControllerRepo.git,https://github.com/CocoaPods/Specs.git'
  4. 如何依赖混合源(OC和Swift)?
3. 如何做文件夹层级?
4. 如何关联资源文件?

五. 如何校验podspec文件

  1. pod lib lint
    只从本地验证你的pod能否通过验证。
  2. pod spec lint
    从本地和远程验证你的pod能否通过验证,建议使用这个。
    --allow-warnings --use-libraries 这个两个如何实现
  3. 私有库的验证。
    使用pod spec lint去验证私有库能否通过验证时应该,应该要添加--sources选项,不然会出现找不到repo的错误。
    pod spec lint --sources='私有仓库repo地址,https://github.com/CocoaPods/Specs'
  4. 私有库引用私有库的问题
    在私有库引用了私有库的情况下,在验证和推送私有库的情况下都要加上所有的资源地址,不然pod会默认从官方repo查询。
    pod spec lint --sources='私有仓库repo地址,https://github.com/CocoaPods/Specs'
    pod repo push 本地repo名 podspec名 --sources='私有仓库repo地址,https://github.com/CocoaPods/Specs'

相关文章

  • CocoaPods-3.podspec文件的说明和编辑

    一. 什么是podspec文件? podspec中spec的全称是“Specification”,说明书的意思。顾...

  • [说明文档]角色编辑器_投掷物

    Record 投掷物编辑模块● 存储文件:data/bullet.lua○ 说明:早期使用的文件名是bullet,...

  • 树莓派连接WiFi

    新建或编辑/boot/wpa_supplicant.conf文件 配置说明 ssid:WiFi的ssid psk:...

  • Elasticsearch

    说明 ELKStack下载地址官方说明文档选择使用压缩文件解压的方式为例子 配置 进入config 编辑 elas...

  • Xcode "快捷键" 及 "菜

    Xcode 菜单功能说明 ​File文件 Edit编辑 View视图 Find查找 Navigate导航 Edit...

  • (11)如何用Sublime Text 3改善Stata命令编写

    先放一张图说明为什么要换这个编辑器来写do文件吧: 左边图中是Stata自带的do文件编辑器,右边是sublime...

  • centos7配置Supervisor

    安装 检验是否安装成功 创建配置文件 编辑配置文件 在配置文件下面添加 启动 开机启动 命令 配置文件说明 参考自...

  • Linux Day20:Vim

    Vim编辑器 vi的使用 鸟哥书籍:按键的说明、Vim的保存文件、恢复与打开时的警告信息 Vim编辑器:文本编辑器...

  • Shell文件编辑器

    文件编辑器,允许在文件中插入、编辑和替换文本等操作。本文主要针对vim编辑器和nano编辑器的使用做简单记录,目前...

  • Shell系列之文件编辑器

    文件编辑器,允许在文件中插入、编辑和替换文本等操作。 本文主要介绍vim编辑器和nano编辑器的简单使用,目前ma...

网友评论

    本文标题:CocoaPods-3.podspec文件的说明和编辑

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