私は別のCocoapodに依存する、例えばMyPod
のように、ココアのポッドを作成しています。たとえばRxSwift
です。CocoaPodの開発中にCocoaPodの依存関係を使用する
だから私はMyPod.podspec
でこれを持っている:
s.dependency "RxSwift", "~> 3.0.1"
しかし、MyPod
を開発しながら、どのように私は実際に依存関係を使用することができますか?
import RxSwift
// ^
// No such module 'RxSwift'
public class MyClass { //...
ステップがありませんか、いくつかの共通の規約がありますか? Moyaのような他のプロジェクトでは、開発中に依存関係を構築するためにCarthageを使用しているようです。それをやるべきか、あるいはPodfile
を追加するべきでしょうか?
これは、独自のPodfile
を持つRepo内のExample Appの場合は問題ではないことがわかります。しかし、私は、サンプルアプリケーションの外でトップレベルに配置されたテストをしたいと思います。また、サンプルアプリケーションの外でも、実際にそのフレームワークを作成することができます。
徹底的な答えをありがとう。しかし、私はあなたが私の質問の最後の部分を忘れてしまったと思います。私は、ExampleAppを通して開発する必要はなく(あるいは全くありません)、フレームワークのトップレベルでテストをしたいと思っています自体。私は単純にフレームワークの使用方法を示すために、私のExampleApp(もしあれば)が存在することを望みます。テストのような本質的なものを含んではいけません。それは心配することなく取り外すことができるはずです。 – solidcell
私が作成したレポを複製することをお勧めします。 Example Appは何のためにも必要ではなく、実際には削除することができます。あなたはあなたの状態のように、すべての開発を「開発ポッド」で行います。さらに、実際にはポッドに対してユニットテストを書くことができます。単体テストターゲットは単純に依存関係としてポッドを持つことができ、TESTABLEを使用してプライベートメソッドをテストに公開することができます。自由にそれを複製し、例を削除してみてください。 Podfileは必要ですが、それ自体でも構いません。 – ericWasTaken
そうです、結局のところ、メインフレームは、フレームワークがそれ自身を構築できるようにするために、まだ余分な 'Podfile'が必要であるということです。あなたのレポについては、私はそれを構築しようとしましたが、Xcodeの問題が大量に発生しています。ファイルが見つかりませんでした(赤色)。ビルドしようとすると '../ build'にビルドフォルダが追加されました。もう一度閉じて開くと、各スキームのコピーされたスキームが作成されます。それぞれのスキルは「___ 2」です。しかし、私は既にあなたと同じソリューション( 'Podfile')になっているので、プロジェクトの設定の違いは除いても問題ありません。 – solidcell