iOS製做cocoapods公共庫以及私有庫

建立項目

github上建立倉庫, 以下圖所示ios

建立github倉庫

注意:選擇添加一個證書, 後面建立pod庫的時候須要用到.git

克隆項目到本地

這裏使用我已有的項目直接練手, 就不新建了.github

使用終端執行git clone https://github.com/ZpFate/TFKit.git命令或者使用Source Tree等工具將代碼克隆到本地.json

建立podspec文件

進入克隆到本地的倉庫目錄下, 執行pod spec create TFKit命令bash

建立podspec文件
建立podspec文件

編輯podspec文件

使用vscode命令打開podspec文件進行編輯框架

vscode打開spec文件

Pod::Spec.new do |s|

  # 庫名稱
  s.name         = "TFKit"

  # 庫的版本
  s.version      = "0.0.1"

  # 庫摘要
  s.summary      = "iOS開發中一些經常使用的基類與類目工具"

  # 庫描述(最比如summary多寫一些描述)
  s.description  = <<-DESC
                    iOS開發中一些經常使用的基類與類目工具, 有AES加密, 字符串處理等
                   DESC

  # 遠程倉庫地址,即 GitHub 的地址,或者你使用的其餘的 Gitlab,碼雲的地址
  s.homepage     = "https://github.com/CircusJonathan/CJChartView"

  # MIT許可證(The MIT License),軟件受權條款
  s.license      = "MIT"
  # s.license = { :type => "MIT", :file => "FILE_LICENSE" }

  # 做者信息
  s.author             = { "Jonathan" => "Jonathan_dk@163.com" }

  # 支持的系統及支持的最低系統版本
  s.platform     = :ios
  s.platform     = :ios, "8.0"

  # 支持多個平臺使用時
  # s.ios.deployment_target = "8.0"
  # s.osx.deployment_target = "10.7"
  # s.watchos.deployment_target = "2.0"
  # s.tvos.deployment_target = "9.0"

  # 下載地址,即遠程倉庫的 GitHub下載地址(clone 地址),使用.git結尾
  s.source       = { :git => "https://github.com/ZpFate/TFKit.git", :tag => "#{s.version}" }

  # 當前目錄是podspec文件所在的目錄
  # 等號後表示的是要添加 CocoaPods 依賴的庫在項目中的相對路徑
  # 「**」這個通配符表明 s.source_files = "TFKit-OC/TFKit-OC/TFKit/*"
  # 次級文件夾
  s.subspec 'TF_Category' do |ss|
  ss.source_files = 'TFKit-OC/TFKit-OC/TFKit/TF_Category/*'
  end

  s.subspec 'TF_BaseClass' do |ss|
  ss.source_files = 'TFKit-OC/TFKit-OC/TFKit/TF_BaseClass/*'
  end

  # 指明文件夾下不須要添加到 CocoaPods 的文件
  # 這裏是 Exclude 文件夾內的內容
  s.exclude_files = ""

  # 是否須要項目是 ARC
  s.requires_arc = true

  # 庫中用到的框架或系統庫(沒用到能夠沒有)
  s.ios.frameworks = 'Foundation', 'UIKit'
  # s.framework = ""
  # s.frameworks = "", ""

  # 若是你的庫依賴其餘的 Podspecs,能夠添加這些依賴項,例如
  # s.dependency 'AFNetworking', '~> 3.2.1'

end
複製代碼

編輯podspec文件

上傳文件以及設置tag

使用git addgit commit, git push將添加的文件推送到github後,再進行tag設置。工具

設置tag
設置tag並推送

驗證podspec文件

繼續在當前目錄下執行命令ui

pod spec lint
複製代碼

報錯1
靜待片刻, 顯示上述錯誤, 則在終端執行

sudo gem install cocoapods
複製代碼

升級完成後再執行驗證命令加密

驗證成功標誌:spa

驗證成功

發佈pod

若是沒有註冊過pod 須要先使用如下命令註冊

pod trunk register email@xxx.com "username"
複製代碼

註冊成功後在終端執行如下命令發佈pod:

pod trunk push TFKit-OC.podspec
複製代碼

發佈pod
發佈pod

發佈成功
發佈成功

發佈成功後可是不能經過pod search到

發佈顯示成功後, 使用pod search命令顯示:

pod search失敗
pod search失敗

在終端輸入

rm ~/Library/Caches/CocoaPods/search_index.json
複製代碼

完成後再搜索

pod search TFKit-OC
複製代碼

搜索成功
搜索結果

私有庫

以上是公共庫的建立, 若是咱們只是想製做一個私有庫, 製做的過程與上邊是同樣的, 可是咱們不須要發佈到cocoapods上. 如今咱們把剛剛只作成的pod庫轉成私有的, 能夠在碼雲上新建一個私有倉庫.

碼雲製做私有庫

而後更改一下podspec便可,

更改podspec文件source地址
保存提交到master, 如今咱們能夠直接在 podfile文件中添加使用了.

pod 'TFKit-OC', :git=> 'https://gitee.com/Twisted_Fate/TFKit.git'
複製代碼

執行pod install命令:

pod install私有庫成功
pod install私有庫成功

到了這裏, 私有庫的建立以及使用也大功告成~

相關文章
相關標籤/搜索