📦

Xcode Swift Packageで追加した依存ライブラリを編集する

1 min read

問題

CocoaPodsと異なり、Xcodeに追加したSwift Packageは、ソースコードの編集ができません。
これは、依存ライブラリをデバッグしたいときにとても不便です。

解決方法

調べたところ、以下のドキュメントで説明されている方法で、依存ライブラリをLocal Packageとして設定すると編集できることがわかりました。

Editing a Package Dependency as a Local Package

https://developer.apple.com/documentation/swift_packages/editing_a_package_dependency_as_a_local_package

このドキュメントの通りに作業すればよいのですが、いくつか操作に迷う点があったので、補足しておきます。

  1. 依存パッケージをGit repositoryからCheck outする (git cloneしましょう。zip archiveでは動作しません)
  2. Local packageとして追加したいXcode project/workspaceを開く

    Local Package化するときに元のSwift Packageを削除してはいけません

  3. Check outした依存パッケージのパッケージフォルダー(Package.swiftを含むフォルダ)をXcode projectの プロジェクトファイル直下(青いアイコン) にドラッグアンドドロップで追加する

    このあと、元々あったSwift Packageが消えますが、ProjectのSwift Packagesには定義が残ったままになっています。

  4. Local package内の適当なファイルを変更して、Build and Runし、変更が適用されていることを確認する

上の作業によって、例えば以下のような構成から

Local packageとして変更した後は、以下のようになります。

Discussion

ログインするとコメントできます