CocoaPods建立私有庫例項

2021-10-22 09:09:29 字數 2741 閱讀 9531

導言1. 從最簡單的開始

pod私庫建立,可以分為三部分:

1)**庫,就是我們一般存在**的git庫,例如github,推薦用國內的。例如gitee

2)podspec,這個是建立私庫的核心部分,用命令建立後,手動修改

3)gitspec,即將第二部中的podspec存到某git庫中,這樣其它專案才能通過設定source,查詢到該庫。

gitspec和**庫,可以放置在不同**,例如乙個github,乙個gitee。在本例中,由於github實在太慢,統一使用gitee。為了加深理解,我這裡,特意讓**庫的名稱與私庫的名稱不一樣。(當然也可以一樣)。

一)建立**庫

先從簡單開始,新建乙個專案(資料夾)然後裡面只有乙個檔案,然後同步到gitee,打上tag,注意你的檔案路徑,因為,podspec中配置要用到,我的如下:

只有乙個目錄classes,下面只有乙個檔案。

git tag -m 「v0.0.1」 0.0.1

git push --tags

特別注意這裡的版本號和檔案路徑。

二)建立podspec

乙個簡單命令即可:

pod lib create xlib

注意我這裡的建立的私庫的名稱與我上面的**庫是不一樣的,當然也可以一樣。

接下來重點就是根據實際配置podspec,進入xlib目錄下,開啟xlib.podspec 或者xcode中開啟,重點需要修改的,是s.version、 s.homepage、s.source、s.source_files, s.description 也需要改下,初始值驗證不過的,其它值根據**庫實際情況來設定:

s.source_files是最容易出錯的,上面已經提醒過,注意**的目錄結構。

然後提交到git時,先驗證檔案有效性。

pod lib lint

pod spec lint

pod lib lint是不聯網驗證的,如果提示

thesource_filespattern did not match any file.

可以忽略,但是pod spec lint是會聯網驗證的,如果提示上面的錯誤,就注意要修改s.source_files了

三)儲存podspec

在gitee任意建立乙個git庫,你後續建立的私庫的podspec都可以儲存到該git,因此下次建立私庫,可以不用建這個庫,直接使用即可,例如我建立的:

通過如下命令將我們的pod上傳到git庫:

pod repo add xlibspec .git

pod repo push xlibspec xlib.podspec

上述命令在xlib目錄下執行,xlibspec 名字任意,上下一致即可,同時需要記住,因為後面podspec修改上傳需要用到。

然後,我們可以看到 庫下建立有xlib相關檔案。

四)使用私庫

我們開啟乙個工程,然後在其podfile中新增:

source '' # cocoapods 官方 spec 索引庫

source ".git"

platform :ios, "11.1"

pod 'xlib', '~>0.0.1'

然後在命令視窗中執行:

pod install --repo-update
2. 公升級到更複雜的**然後開始上傳到git:(該命令會自動執行pod spec lint)

pod repo push xlibspec xlib.podspec --verbose --allow-warnings --use-libraries
引數說明:

–verbose 可以列印編譯驗證過程,如果出錯,可以知道具體錯誤是啥

–use-libraries 第三庫依賴需要新增這個,否則可能編譯不通過

–allow-warnings 不在這個,一旦有warn,就會驗證失敗

成功後,可以看到:

上傳成功後,我們的專案就可以使用最新版本的xlib庫了(podfile更改版本為0.0.3):

pod install --repo-update

以上,all

3. 總結

說到底建立pod私有庫,是為專案元件化做準備而已,ios實現元件化,還需借助第三方工具,目前最適合的是ctmediator。有空會結合pod私有庫,寫寫ctmediator的例項。網上有很多例子,但都感覺寫的不對,相反,ctmediator本身提供的demo倒是寫的不錯。

ctmediator 例項參考:

Cocoapods 建立私有庫

比如我有乙個框架a,該工程已經在git版本管理下了,先要在該工程下建立podspec 檔案,裡面包含著一些資訊。比如使用該框架時依賴哪些框架,開源協議,需要哪些檔案,以及該工程的對應tag標籤。然後上傳podspec到私有specrepo。spec repo裡面可以管理很多podspec,其實coc...

CocoaPods 私有庫建立

總結流程和pod 指令,以及自己操作遇到的問題。參考文章 ios元件化 基礎 ios元件化 專案元件化 swift objective c 使用cocoapods建立 管理私有庫 初中級用法 swift objective c 使用cocoapods建立 管理私有庫 高階用法 建立自己的私有庫 4 ...

CocoaPods私有庫的建立

一.建立版本庫首先,我們要建立乙個像master一樣的存放版本描述檔案的git倉庫,因為是私人git倉庫,我選擇了oschina來建立自己的石油倉庫 因為是免費的?當然你也可以選擇在github上建立 7 month 接下來,我將以oschina為例來建立自己的私有庫 建立版本描述倉庫 版本庫名字為...