はじめに
iOSアプリ開発における依存関係管理ツールとして、「Swift package Manager」についての記事となります。
似たような依存関係管理ツールとしては、「Carthage」や「Cocoa Pods」などが有名かと思いますが、Xcode標準のツールとなる「Swift package Manager」の方が導入しやすいです。
あとは、使用したいパッケージが「Swift package Manager」に含まれているかどうかですね。。
また、調べると色々古い記事ばかりで最新のXcode環境では微妙に異なります。
とはいえ、基本的に導入手順は変わっていないので問題無いとは思いますが、最新のXcodeでの導入手順について記載していきます。
今回は、FirebaseのパッケージをSwift Pachage Managerで導入していこうと思います。
参考: FirebaseをSwift Package Managerでインストールする方法
https://firebase.google.com/docs/ios/swift-package-manager?hl=ja
Github
https://github.com/swiftlang/swift-package-manager
↑ちなみに、なんならFirebaseの公式の導入手順も最新のXcodeでは無い模様
使用する環境は以下の通り
・Mac OS Sonoma 14.5
・Xcode 15.4
・使用言語 Swift (バージョンは5)
導入手順
1)「File」>「Add Package Dependencies」を選択
2)Swift Package Managerで使用したいパッケージを選択することが可能
リポジトリのURLを直接入力することでも指定可能。
以下はFirebaseのリポジトリのURLを入力したときのScreenShot.
3) Dependency Ruleの指定
記載されている通りではあるのだが、選択肢は以下の通り
選択肢 | 内容 |
---|---|
Up to Next Major Version | 次のメジャーバージョンまで更新可能 例:10.29.0 < 11.0.0 |
Up to Next Minor Version | 次のマイナーバージョンまで更新可能 例:10.29.0 < 10.30.0 |
Exact Version | 固定のバージョン |
Range of Versions | 手入力でアップデートのバージョン指定可能 |
Branch | ブランチを指定することも可能 |
Commit | コミット番号を指定することも可能 |
ちなみに、非常に分かりづらいが
パッケージ導入後にDependency Ruleを変更したい場合は
PROJECT > Dependency Ruleタブ で変更可能
上記より、メジャーバージョンを更新する為には、Exact Version以降の選択肢が必要になる。
もしくは、 File > Packages > Update to Latest Package Versions で最新バージョンにアップデートさせることも可能。
補足:他の項目は以下の意味となる
Reset Package Caches:リセット
Resolve Package Versions:依存関係を解決
Update to Latest Package Versions:最新バージョンに更新
最後に
使用したいパッケージがSwift Package Managerにあるのであれば、
他のツールを使用するようりSwift Package Managerの方が良いかと思います。
地味にCocoa Podsとかインストールめんどいんですよね。。
以上