您的位置:9159金沙官网 > www.9159.com > 让自己的开源项目支持CocoaPods

让自己的开源项目支持CocoaPods

发布时间:2019-12-23 07:12编辑:www.9159.com浏览(85)

     测量检验的时候找个温馨包裹的不二等秘书籍或UI控件就足以了 这里用作者刚封装的Redirect重定向的央浼体为例

    1, 在github上创建二个Redirect,主要:记得接纳开源合同(MIT)(假使木有GitHub这先百度一下卡塔尔国

    图片 1

    2, 使用 Github Desktop Clone (克隆卡塔尔(英语:State of Qatar) Redirect 到Computer桌面 

    注: 改良Redirect文件里的东西记得那时更新,如何利用Github Desktop请百度

    让自己的开源项目支持CocoaPods。3, cd到当前目录

    $ cd Redirect
    

    让自己的开源项目支持CocoaPods。4, 创立三个podspec文件,命令:

    $ pod spec create Redirect
    

    5, 编辑 podspec文件,这里是用vim打开的,命令:(当然使用文本编辑器展开也得以卡塔尔

    $ vim Redirect.podspec
    

    6, 创制之后会自动生成三个模板,里面会有详细的注脚,大家只供给按需求修正那一个文件就可以,

    上面这么些是测量检验的时候笔者编辑的 (假诺须要更更加多的构造能够参照其余开源项指标podspec文件):

    (注: 以#伊始的是能够删掉滴卡塔尔(英语:State of Qatar)

    Pod::Spec.new do |s|
    
    
    
      s.name         = "Redirect"
      s.version      = "0.0.1"
      s.summary      = "Redirecting Requests."
      s.description  = <<-DESC 
                              This is a Redirecting Requests.
                       DESC
      s.homepage     = "http://www.cnblogs.com/ljcgood66/"
      s.license      = "MIT"
      s.author       = { "LiJunCheng" => "1139981137@qq.com" }
      s.platform     = :ios
      s.source       = { :git => "https://github.com/ganlinmeng/Redirect.git", :tag =>"0.0.1" }
      s.source_files  = "Redirect", "Redirect/**/*.{h,m}"
      s.exclude_files = "Classes/Exclude"
      s.framework  = "UIKit"
      # s.frameworks = "SomeFramework", "AnotherFramework"
      # s.library   = "iconv"
      # s.libraries = "iconv", "xml2"
    
    
      # ――― Project Settings ――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
      #
      #  If your library depends on compiler flags you can set them in the xcconfig hash
      #  where they will only apply to your library. If you depend on other Podspecs
      #  you can include multiple dependencies to ensure it works.
    
      # s.requires_arc = true
    
      # s.xcconfig = { "HEADER_SEARCH_PATHS" => "$(SDKROOT)/usr/include/libxml2" }
      # s.dependency "JSONKit", "~> 1.4"
    
    end
    

    s.name:名称,pod search 搜索的主要词,注意让自己的开源项目支持CocoaPods。这里分明要和.podspec的称呼相像,不然报错
    s.version:版本号
    s.ios.deployment_让自己的开源项目支持CocoaPods。target:扶植的pod最低版本
    s.summary: 简介
    s.homepage:项目主页地址
    s.license:许可证
    s.author:作者
    s.social_media_url:社交网站
    s.source:项指标地址
    s.source_files:必要满含的源文件
    s.resources: 财富文件
    s.requires_arc: 是还是不是协助ARC
    s.dependency:信任库,无法依据未透露的库
    s.dependency:重视库,如有多个能够这么写

    (注: 也可能有那样写: s.license= { :type => "MIT", :file => "LICENSE" }

    7, 成立tag,并推送到github,依次实施以下命令:

    $ git add .
    $ git commit -m "0.0.1"
    $ git tag 0.0.1
    $ git push --tags
    $ git push origin master
    

    (注: 当执行完 git push --tags  后终端会让您输入GitHub的账号和密码卡塔尔国

    Username for 'https://github.com':
    Password for 'https://ganlinmeng@github.com': 
    

    8, 验证podspec文件

    $ pod spec lint Redirect.podspec
    

    固然终端提示 (but you can use `--allow-warnings` to ignore them).

    你可以

    $ pod spec lint Redirect.podspec --allow-warnings
    
    • 倘诺注解不通过,会有详实的E奔驰M级RO奥迪Q5和WA奥迪Q5ING提醒,依照提醒依次解决,然后再次回到第7步重新来贰遍。
      注意:在再一次最初早先,大家要去除远程库的tag和本土的tag,命令如下:

      $ git tag -d 1.2 //删除本地tag $ git push origin :refs/tags/1.2 // 删除远程库tag

    如果注解通过会如此突显

    图片 2

    9, 要是是第壹遍提交,必要先试行这么些命令:

    $ pod trunk register 这里写邮箱 '这里起个名字' --description=' 这里写描述'
    

    推行到位之后,会给您的邮箱里发生机勃勃封邮件,去邮箱点击链接!

    下一场提交到CocoaPods

    (注意:由于作者表达podspec文件时选拔了--allow-warnings 所以这里前面也拉长--allow-warnings卡塔尔(英语:State of Qatar)

    pod trunk push Redirect.podspec --allow-warnings
    

    10, 提交成功后,就足以通过cocopods查找Redirect了

    图片 3

    (注意:卡塔尔国刚交付后项目用pod search命令会搜不到,因为本地的目录未有革新,使用下面从容不迫删除索引文件

    rm ~/Library/Caches/CocoaPods/search_index.json
    

    最后pod search 命令搜到本身的花色,马到成功

     要是依旧非常就再实行

    rm ~/Library/Caches/CocoaPods/search_index.json
    
    pod setup
    

    再进行pod search,

    -完美

    图片 4

    如此那般就足以开展利用了.

    最终多谢各位大佬

    参考:

     

    本文由9159金沙官网发布于www.9159.com,转载请注明出处:让自己的开源项目支持CocoaPods

    关键词:

上一篇:没有了

下一篇:Objective-C Runtime 运行时之一:类与对象