zoukankan      html  css  js  c++  java
  • iOS组件库创建(一)

    一、创建远程私有索引库

    1、什么是远程私有索引库?

    远程私有索引库, 用来检索私有库,例如终端输入pod search AFNetworking,可以检索出相关库的名称、版本、子库等信息。

    2、创建远程私有索引库项目

    (样例使用的是CODING平台、可以使用github等其他平台) CODING平台创建项目iOS_xxx索引库 代码库MJSpecs: 

    调研中,创建组件仓库中均使用https没有使用SSH,所以在项目都是用https路径。

    3、打开终端,将远程私有库关联到本地

    cd ~/.cocoapods/repos

    pod repo add MJSpecs https://e.coding.net/xxxx/xxxx/MJSpecs.git

    执行中会提示输入用户名密码,如下图:

    克隆之后打开.cocoapods/repos文件,终端open ~/.cocoapods/repos 多出MJSpecs项目文件: 

    到此索引库关联完成。

    二、创建远程私有组件库

    1、创建样例组件库MJKit

    终端切换到本地project文件目录下(project自己创建,放置组件项目的文件夹):

    cd /Users/xxxx/Desktop/project

    pod lib create MJKit

    #MJKit代表想要封装的组件名称, 这个根据自己的需求而定。

    创建的时候会可能会提示输入邮箱,输入之后,会提示输入项目的一些属性,如下图:

    创建完成之后自动会自动打开此项目,目录结构如下图:

    可以发现在Pods文件下面现在有一个MJKit的文件夹,就是我们上面pod lib create MJKit时候创建的文件夹名

    2、创建组件远程仓库

    样例在CODING平台创建项目iOS_组件库:

    创建代码仓库MJKit,如下图:

    3、创建成功后配置MJKit项目的.podspec文件,文件位置 

    4、配置成功后,把本地的组件代码提交到远程仓库

    这里使用命令行: cd /Users/xxx/Desktop/project/MJKit 

    #添加远程仓库 git remote add origin https://e.coding.net/xxx/xxx/MJKit.git git

    push -u origin master #第一次可能会报错可尝试用

    git push -u origin master -f 可能会覆盖远程的修改

    git add . #记得后面一定要有 .

    git commit -m "创建样例组件"

    git push -u origin master git tag '0.1.0' #注意:这里的tag号必须和.podSpec文件的版本号一致

    git push --tags

    推送之后查看远程平台,如下图:

    5、对文件进行本地验证和远程验证(在工程目录下)

    从本地验证你的pod能否通过验证:

    pod lib lint --use-libraries --allow-warnings

    --verbose:有些非语法错误是不会给出错误原因的,这个时候可以使用--verbose来查看详细的验证过程来帮助定位错误。

    --use-libraries:表示使用静态库或者是framework,这里主要是解决当我们依赖一些framework库后校验提示找不到库的时候用到。

    --allow-warnings:表示允许警告。

    从本地和远程验证的pod能否通过验证

    pod spec lint --use-libraries --allow-warnings

    将组件项目的.podspec 文件提交到本地的私有索引仓库,然后再push到远程私有索引仓库

    pod repo push MJSpecs MJKit.podspec --use-libraries --allow-warnings 

    此时打开~/.cocoapods/repos

    6、查看远程私有索引库

    7、使用终端查看自己的私有组件

    pod search MJKit 

    如果没有找到可以删除search_index.json

    终端输入rm ~/Library/Caches/CocoaPods/search_index.json

    再pod search MJKit

    三、项目中组件库使用

    创建一个新的项目ModuleDemo,添加podfile文件,如下:

    source 'https://github.com/CocoaPods/Specs.git'
    
    source 'https://e.coding.net/xxx/xxx/MJSpecs.git'
    
    use_frameworks!
    
    platform :ios, '9.0'
    
    target 'ModuleDemo' do  
    
      pod 'MJKit', '0.1.0'  
    
    
      target 'ModuleDemoTests' do    
    
      inherit! :search_paths  
    
      end
    
    end

    这个时候cd到项目下执行pod install是会报错的,提示找不到此库。

    首先需要在终端执行pod repo update --verbose 更新库,之后再cd到项目下执行pod install。

    版本更新之后也需要更新。

     iOS组件库创建(二)

  • 相关阅读:
    codevs 1115 开心的金明
    POJ 1125 Stockbroker Grapevine
    POJ 2421 constructing roads
    codevs 1390 回文平方数 USACO
    codevs 1131 统计单词数 2011年NOIP全国联赛普及组
    codevs 1313 质因数分解
    洛谷 绕钉子的长绳子
    洛谷 P1276 校门外的树(增强版)
    codevs 2627 村村通
    codevs 1191 数轴染色
  • 原文地址:https://www.cnblogs.com/lulushen/p/14798834.html
Copyright © 2011-2022 走看看