最近在研究組件化開發這個東東,發現許多公司組件化開發都是用的 cocoapods 來做管理,那麼就研究一下 cocoapods 來託管自己的代碼。參考了多方文章,踩坑許久終於成功了,現在整理一下~
大致流程如下:
【一】新建 github 項目並與本地項目關聯
【二】創建podspec文件
1. 瞭解 podspec
2. 配置 podspec
【三】新建版本,註冊 cocoapods
【四】上傳{project}.podspec到CocoaPods官方倉庫
詳細流程:
【一】新建 github 項目並與本地項目關聯
1.註冊一個 github賬號(有賬號的可以忽略~)
2.如圖1 點擊 new repository 在add lisence選擇MITlicense
3.生成後的工程 下載到你的本地
地址就是地址欄的地址
4.創建一個本地項目 在你github 項目關聯的地址下
樓主是用的 xcode 創建的一個叫PodDemo 的項目
隨便新建幾個文件
創建 README.md 可以參考下面文章
創建README.md文件
博主用的是 git 命令來關聯工程的,關於 git 命令是用可以學習
Git教程
【二】創建podspec文件
1.進入目錄
cd 工程路徑(這裏指的是和你的 README.md 同級)
2.新建Podspec文件
pod spec create 文件名稱
出現這個的時候就是成功了
3.打開這個文件
可以用多種方式打開,博主這邊是用的是 vim 編輯器
輸入如下命令
vi FJObject.podspec
打開以後會發現很多很多內容,可以學習下這篇博客
http://www.jianshu.com/p/a72a529dc659
推薦修改裏面內容如下
Pod::Spec.new do |s|
s.name = "HcdCachePlayer"
s.version = "0.0.1"
s.summary = "pod測試"
s.description = <<-DESC
我是一個 pod 測試的 demo
DESC
s.homepage = "https://github.com/Jvaeyhcd/HcdCachePlayer"
s.license = { :type => "MIT", :file => "LICENSE" }
s.author = { "fujia" => "[email protected]" }
s.platform = :ios, '7.0'
s.source = { :git => "https://github.com/ButterflyDance/PodTest.git", :tag => s.version.to_s }
s.source_files = "hcdCachePlayer/**/*.{h,m}"
s.resource = "hcdCachePlayer/hcdCachePlayer.bundle"
s.frameworks = "UIKit", "AVFoundation", , "Foundation"
s.requires_arc = true
s.dependency "Masonry"
end
按下“esc” 輸入“:wq”(保存並退出)
執行如下命令 查看是否編譯通過
pod lib lint FJObject.podspec
如果有警告可以忽略 並使用如下命令執行
pod lib lint FJObject.podspec —allow-warnings
如果有報錯可以通過
http://www.jianshu.com/p/283584683b0b
http://www.jianshu.com/p/b9a28b6ab1e1
這兩篇文章查找問題
最後輸出這個表示通過
【三】新建版本,註冊 cocoapods
1.構建新 release 版本
注意: 這裏的Tag verson 一定要和上面設置的s.version以及 s.source 中的 tag保持一致.
點擊Public release 即可完成
2.註冊cocopods 賬號
打開終端 輸入命令
// 郵箱 用戶名 描述信息
pod trunk register aa@qq.com 'fujia' --description='Test1'
如果註冊過 可以使用如下命令
pod trunk register eloy@example.com --description='Work Laptop'
pod trunk register eloy@example.com
隨後可以去郵箱裏麪點擊認證郵件
使用如下命令認證
pod trunk me
輸出如下圖則成功
【四】上傳{project}.podspec到CocoaPods官方倉庫
1.輸入如下命令檢查是否可用
pod spec lint
如果有警告可以使用如下命令忽略全部警告
pod spec lint —allow-warnings
2.上傳代碼
pod trunk push FJObject.podspec
等待一會會看到如下圖所示
可以使用
pod search LZTool
搜索自己的項目
如果現實查找不到可以使用
pod setup
更新自己 cocopods 庫
也可以使用新工程下載 pod 代碼
總結:一路上遇到很多很多的坑,這個時候需要靜下心來好好學習,查閱資料,總結經驗,不斷提升自己,千萬不要輕言放棄。
【參考文章】
[Cocoapods]使用Cocoapods託管代碼
[Cocoapods]項目添加Cocoapods支持遇到的坑
CocoaPods的製作過程
Github代碼添加Cocoapods支持