美文网首页
发布框架到cocoapods

发布框架到cocoapods

作者: 逗留 | 来源:发表于2017-06-16 16:17 被阅读14次

    在github创建仓库

    打开终端,依次输入

    cd desktop (要保存的位置)

    git clone https://github.com/Zyj163/YJWebViewHolder.git  (clone后面是刚刚拷贝的地址)

    完成之后会在desktop看到一个新的文件夹,将代码放到这个文件夹中

    cd 当前文件夹

    pod trunk register 邮箱 '用户名' --verbose   ( 注册trunk)

    pod spec create 项目名   (创建一个以项目名为文件的spec文件)

    使用xcode打开这个文件,编辑内容

    Pod::Spec.newdo|s| 

    s.name='YJWebViewHolder'   //项目名称

    s.version='1.0.0'   //版本号

    s.license={:type=>"MIT",:file=>"LICENSE"}  //license

    s.summary='easy use WKWebView in Swift'  //概述

    s.description=<<-DESC     //详细描述

    easy to use WKWebView in Swift

    DESC

    s.homepage='https://github.com/Zyj163/YJWebViewHolder'   //主页,github上该项目的地址

    s.authors={'zhangyj'=>'zyj194250@163.com'}   //作者

    s.source={:git=>'https://github.com/Zyj163/YJWebViewHolder.git',:tag=> s.version }     //项目实际地址(刚刚clone的地址),tag标签,后面会添加

    s.ios.deployment_target='8.0'    //系统版本

    s.source_files='YJWebViewHolder/*.swift'    //实际框架目录及文件

    // s.verdored_frameworks = "YJWebViewHolder/*.framework"  //如果打包成.framework

    // s.verdored_libraries = "" //如果打包成.a

    /*

    如果想要把整个框架分开为几个子库,可供单独集成,source_files要改写成下面的样子

    s.subspec 'XX' do |x|

    x.source_files = 'YJWebViewHolder/XX/*.swift'

    x.depedency  ''

    x.frameworks ''

    end

    在Podfile文件可以这样写

    pod 'YJWebViewHolder/XX'

    或者 pod 'YJWebViewHolder',  :subspaces => ['XX']

    */

    s.requires_arc=true    //ARC

    s.frameworks="UIKit","WebKit"   //所包含系统框架

    s.depedency ''

    s.depedency ''

    s.library = "sqlite3"

    s.pod_target_xcconfig={'SWIFT_VERSION'=>'3.0'}   //swift版本

    /*

    s.source_bundles = {

    'YJWebViewHolder' => ['YJWebViewHolder/Assets/*.png'] //资源,并且在使用的时候要指定资源的相对路径

    NSBundle *currentBundle = [NSBundle bundleForClass:];

    NSString *imageFile = [currentBundle pathForResource:ofType:inDirectory:];

    UIImage *image = [UIImage imageWithContentsOfFile:];

    }

    */

    /*借助环境变量的值,来控制加载流程,使用的时候,安装命令   xx=1 pod install

    if ENV["xx"]

    else

    end

    */

    end

    pod spec lint YJWebViewHolder.podspec    (验证该文件)

    git status (查看文件状态)

    git add .  (添加所有文件到本地暂缓区)

    git commit -m "description" (提交到本地仓库)

    git push  (提交到远程仓库)

    git tag "0.0.1" (添加tag标签)

    git push --tags  (推送所有tag到远程仓库,可以在下图中位置查看)

    pod trunk push (以后提交新版本,只需要添加对应tag,并修改spec文件,然后执行该命令即可)

    pod setup

    使用

    在Podfile中添加

    pod 'YJWebViewHolder', :git => 'https://github.com/Zyj163/YJWebViewHolder.git'

    pod cache clean --all  清理缓存

    使用cocoapods-packager制作静态包

    安装:sudo gem install cocoapods-packager

    使用:pod package .spec

    Carthage的使用及让自己的项目支持carthage:www.jianshu.com/p/bf263c596538

    补充一个在使用的时候carthage update 失败,可以尝试将Cartfile中修改为github "github地址"

    相关文章

      网友评论

          本文标题:发布框架到cocoapods

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