問題タブ [carthage]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
964 参照

swift - カルタゴのネストされた依存関係

私はiOSフレームワークにかなり慣れていませんが、遊んでいCarthageSwift、非常に単純な質問にたどり着きましたが、探している答えが見つからないようです。

私は現在AlamofireObjectMapperライブラリをいじっていてAlamofireObjectmaper、これら2つのリンクを適切に作成するという別のフレームワークがあることを発見しました。

私の質問は、カートファイルでこれをどのように処理すればよいですか? 私の最初のアイデアは、3つすべてを含めることでした

しかし、私はそれ自身のフレームワークのAlamofireObjectMapper両方Alamofireに依存しているため、これら2つを含める必要はないと考えました。ObjectMapperだから私はすべてを削除し、1AlamofireObjectMapper行だけ追加しました. そして、私のプロトタイプはまだうまく機能しています (私はまだimport Alamofire自分のコードで動作します.

このような状況にどのように対処すればよいですか?単一Alamofireおよび `ObjectMapper フレームワークを保持する必要があります。もしそうなら、それらは実際にカルタゴによってどのように処理されますか?

私が見てきたことから、AlamofireObjectMapperフレームワークには独自のバージョンのフレームワークが含まれているためAlamofireです。ある時点で、両方のAlamofireフレームワークに異なるバージョンが含まれている可能性はありますか? もしそうなら、それは実行時に問題を引き起こしませんか?

0 投票する
2 に答える
1897 参照

ios - Carthage のフレームワークでフレームワークを使用するにはどうすればよいですか?

このガイドに従って、Swift フレームワークを作成しました。これはクライアント アプリで機能し、テストすることもできます。

ここまでは順調ですね。

JASONなどのフレームワークをフレームワークに追加すると、表示されないため、コードにインポートできません。

興味深いことに、単体テスト ターゲットにフレームワークをインポートできます。これは、私が望んでいる、または必要としている場所ではありません。

カーセージのアドバイスに加えて、ロボットアドバイスにも従っています。

何か案は?

0 投票する
1 に答える
430 参照

xcode - Xcode に Swift をサポートする Carthage 経由で MailCore2 を追加する

ここでできる限りバニラになろうとしています:

New Project->OS X->Application->Language (Swift) Name (MailCoreTest) プロジェクトを閉じる プロジェクトのルートに次の 1 行を含むカートファイルを追加します: github "MailCore/mailcore2"プロジェクトのルート いくつかの警告が表示されますが、実際の問題はありません:

プロジェクトを Xcode で再度開く アプリケーション ターゲットの [全般] 設定タブの [埋め込みバイナリ] セクションで、Carthage がビルドした MailCore.framework をドラッグ アンド ドロップします。また、dSYM を製品ディレクトリに追加します ファイルのコピー フェーズ この段階で、アプリは正常にビルドされますが、以下を追加すると:

Swift-Bridging-Header.h ファイルに、それを Objective-C ブリッジング ヘッダー ビルド設定に追加すると、大量のビルド エラーが発生します。

奇妙なことに、これは別のプロジェクトで機能しています。それに対してcarthage updateを実行することさえできますが、何も壊れません。機能する新しいプロジェクトを何時間も再現しようとした後、それを機能させることができないようです。何かが欠けているに違いないのですが、それが何であるか、どこを見ればよいかさえわかりません。

テストでは、「ターゲット」の下でビルド設定を試し、「フレームワークモジュールでの非モジュラーインクルードを許可する」を「はい」に設定しましたが、同じ結果が得られました。他の作業プロジェクトでは、これは「いいえ」に設定されています。