私有库

索引库:存放索引地方
私有库:存放代码地方

##1.构建索引库

1.1 构建Cocoapods管理

1.1.1 创建spec文件【记录私有库各个版本信息】

pod spec create 私有库文件名称

1.1.2 配置spec文件

# ―――  Spec Metadata  元数据信息
s.name         = "tztPodAPI"
s.version      = "0.0.1"#tag版本号
s.summary      = "A short description of tztPodAPI."#概述信息
s.description  = <<-DESC
                   DESC #DESC中间添加描述信息
s.homepage     = "http://EXAMPLE/tztPodAPI"

# ―――  Spec License 证书类型
s.license      = "MIT (example)"
# s.license      = { :type => "MIT", :file => "FILE_LICENSE" }
#――― Author Metadata 作者信息
s.author             = { "xxxxxx" => "[email protected]" }

#――― Platform Specifics 平台设置
s.platform     = :ios, "8.0"

#――― Source Location 代码路径
s.source       = { :git => "http://EXAMPLE/tztPodAPI.git", :tag => "#{s.version}" }

#――― Source Code 代码文件
s.source_files  = "Classes", "Classes/**/*.{h,m}"
s.exclude_files = "Classes/Exclude"  #忽略文件
s.prefix_header_file = ""  #预编译头文件路径,将该文件的内容插入到Pod的pch文件内
s.deployment_target: #配置的target

#――― framework代码文件设置
 s.vendored_frameworks = "tztVideoRecordLib.framework"
 s.resources = "tztVideoRecordLib.framework/Resource/*.*"

#――― .a代码文件设置
 s.source_files  = "include/*.{h}"
 s.vendored_libraries = "libs/*.a"

#――― Resources 配置资源文件
s.resources = "src/tzt.bundle/**/*.png"

#――― Project Linking
s.framework  = "QuartzCore"
s.frameworks = "SomeFramework", "AnotherFramework"#配置依赖系统库多个以','分割
s.libraries = "c++"#配置依赖系统静态库多个以','分割,libc++.tbd,仅需设置c++

#――― Project Settings
s.requires_arc = true # 是否启用ARC
s.xcconfig = {'OTHER_LDFLAGS' => '-ObjC'}

#依赖其他第三方
s.dependency 'JSONKit', '~> 1.4'
s.dependency 'otherSDK'

1.2 推送到私有库

1.2.1 将私有库配置到本地cocoapods 索引里面,并制定远端索引地址(用于推送更新使用)

 cd ~/.cocoapods/repos
 pod repo add 自定义repo名称 自定义repo名称远端索引git路径
 #移除自定义repo
 #pod repo remove 自定义repo名称  

1.2.2 验证spec文件配置是否正确

cd 私有库spec文件夹路径下
pod lib lint  --private

验证通过

$  pod lib lint --private
 -> tztPodAPI (0.0.3)
tztPodAPI passed validation.

1.2.3 推送私有库索引到远端
将cocoapods管理的代码打tag之后,配置好s.version版本信息,推送s.version版本到远端

git tag 0.1.0
git push  --tags

framework打包

pod package tztPodAPI.podspec --force
#--library 为.a静态库
#默认为framework
# --force 覆盖已存在的文件
cd 私有库spec文件夹路径下
pod repo push 自定义repo名称 要推送的spec 名称

# 2. 获取私有库

2.1 配置Podfile

source 'https://github.com/CocoaPods/Specs.git'  #cocoaPods公有库spec索引路径
source 'https://gitee.com/Oubo/oushunboPodRepo.git' #oushunboPodRepo私有库spec索引路径
use_frameworks!
target ‘tztPodAPIDemo’ do
   pod 'tztPodAPI' '~>0.0.1'   #  ~> 大于0.0.1版本,
end

#  pod 'tztPodAPI' '~>0.0.1'   # ~>大于等于0.0.1版本,
#  pod 'tztPodAPI' '0.0.1'   #指定=0.0.1版本

2.2 更新库

pod install    #安装
pod update     #更新

任务列表
1. 开放几个文件,开发源码用cocoapods管理【解决】
2. 开发几个文件,打成framework,用cocoapods管理【正在处理】
3. 关联系统库,关联第三方库【未处理】
4. 添加资源文件【未处理】
5. 直接一个第三方SDK,用cocoapods管理
参考文章
https://www.jianshu.com/p/0c640821b36f
http://www.cocoachina.com/ios/20180511/23359.html
https://www.jianshu.com/p/d6a592d6fced
脚本管理
https://juejin.im/entry/58df270f61ff4b006b1227c9
https://www.jianshu.com/p/20c0b213023c

原文地址:https://www.cnblogs.com/ouyangbobo/p/11664064.html

时间: 2024-11-06 14:42:19

私有库的相关文章

Maven 私有库 Nexus的安装

1.下载 Nexus下载地址:http://www.sonatype.org/nexus/go/ # wget https://sonatype-download.global.ssl.fastly.net/nexus/oss/nexus-2.11.2-03-bundle.tar.gz 2.解压 #mkdir /usr/nexus # tar -zxvf nexus-2.11.2-03-bundle.tar.gz  -C /usr/nexus/ #cd  /usr/nexus # lsnexus

在 Docker 搭建 Maven 私有库

在 Docker 搭建 Maven 私有库 小引 If you are developing software without a repository manager you are likely missing a number of opportunities to reduce some pretty obvious inefficiencies. If everyone on your team has to hit public repositories like the Centr

maven无法下载私有库中的jar包

前两天同事遇到一个问题: 同一个工程,依赖私有库中的一个jar包,其他同事的项目都能成功下载,但只有他的项目无法正常下载依赖,最后虽然找到原因了,但还是在这里备注一下: 1.maven依赖管理 maven通过GAV坐标对项目依赖进行管理,如果有公司内部有私有库存在的话,依赖查找的顺序是这样的:本地仓库-->私有仓库-->中央仓库(这是没有配置mirror拦截的情况):如果在setting中配置了mirror,且mirrorOf配置为*,url指向私有库路径,则查找顺序是这样的本地仓库-->

centos7.2定制属于自己的docker私有库

解决http协议的问题: 方法一:解决HTTPS问题 安装nginx,配置HTTPS协议 方法二:修改docker的配置文件 vim  /etc/default/docker增加 OPTIONS="--insecure-registry 192.168.10.249:5000" 准备配置环境: 主机名     主机IP 服务 docker-images 10.0.0.5 docker    私有库库配置 10.0.0.6 docker    客户端 [[email protected]

satis 搭建 Composer 私有库的方法

安装 satis 命令行下执行: php create-project composer/satis --stability=dev --keep-vcs . 配置 创建 satis.json 文件,如官方示例: {"name": "My Repository","homepage": "http://packages.example.org","repositories": [{ "type&q

macOS sierra 10.12 Cocoapods 私有库

使用Cocoapods创建私有podspec 见文章:http://www.cocoachina.com/ios/20150228/11206.html 或http://blog.wtlucky.com/blog/2015/02/26/create-private-podspec/ 注意点: 1 按照步骤一步一步的做,看仔细了. 2 podfile 中source 填写的是Specs.git,是Spec Repo,是所有的Pods的一个索引(例如: 'https://git.coding.net

Dubbo分布式系统架构,持续集成篇 Maven私有库和本地库的安装与配置 Sonatype Nexus + Maven

  环境:CentOS 6.6 Final.JDK7.SonatypeNexus.Maven IP:192.168.4.221 root用户操作 前提:已安装JDK7并配置好了环境变量 1.下载最新版Nexus(本教程使用的是:nexus-2.11.2-03-bundle.tar.gz),下载地址:http://www.sonatype.org/nexus/go/ # wget https://sonatype-download.global.ssl.fastly.net/nexus/oss/n

Android查看私有库android-spport-v4.jar &amp; android-support-v7-appcompat.jar源码

一.非私有库查看源码 非私有库添加源码很简单,在这里只说一种.右击jar文件Properties Java Source Attachment,如下图,添加External Folder即可. 二.私有库查看源码 Android-support-v4.jar和Android-support-v7-appcompat.jar被放在Android Private Libraries目录下,属于私有库,无法采用上述方法. 可在jar文件所在目录下,建立其对为应的properties文件,文件中添加一行

远程私有库的创建 pod

1.在github(或coding.net可创建私有库)创建一个远程库 2.添加一个本地库 并关联到远程库 pod repo add '本地库名称'  远程库地址 3.如是私有库,需要签名ssh设置公钥,私钥 ssh-keygen  //回车,然后设置 4.获取到远程库 cd 本地地址 pod lib create '文件名'     //clone到本地

Maven私有库和本地库的安装与配置 Sonatype Nexus + Maven

环境:CentOS 6.6 Final.JDK7.SonatypeNexus.Maven IP:192.168.4.221 root用户操作 前提:已安装JDK7并配置好了环境变量 1.下载最新版Nexus(本教程使用的是:nexus-2.11.2-03-bundle.tar.gz),下载地址:http://www.sonatype.org/nexus/go/ # wget https://sonatype-download.global.ssl.fastly.net/nexus/oss/nex