1

IB3 プラグイン テンプレートを使用して、カスタム コントロールとフレームワーク/IB プラグインを作成しました。

ドキュメントによると、プラグインはフレームワークのリソース ディレクトリに直接ビルドする必要があります。プロジェクトをビルドすると、プラグインは代わりにフレームワークとともに構成フォルダー (Debug) にあります。

これは、新しいテンプレートを作成するときと同じ動作です。に変更しようとしましCONFIGURATION_BUILD_DIR$(BUILD_DIR)/$(CONFIGURATION)/FrameworkName.framework/Resources/が、変更はありませんでした。

笑顔のために、インストールパスをいじってみましたが、どこにも行きませんでした。ビルド設定を確認するために他のいくつかのオープン ソース プロジェクトをチェックアウトしましたが、それらは自分のものと同じですが、プラグインはビルドされ、期待どおりにリソース ディレクトリに配置されます。

4

3 に答える 3

1

ビルド設定を台無しにしないでください。代わりに、「ファイルのコピー」ビルド フェーズをフレームワーク ターゲットに追加します。コピー ファイルのビルド フェーズのインスペクターで、ディレクトリを "Resources" に設定します。Xcode の「グループとファイル」ツリーの「製品」グループからプラグイン製品をドラッグして、このビルド フェーズにプラグインを追加します。

于 2009-05-18T16:53:23.837 に答える
0

1つのXcodeターゲットのビルドされた製品を、別のXcodeターゲットの製品のリソースディレクトリに含めるには、グループとファイルツリーで製品を見つけ、その製品を他のターゲットのコピー「バンドルリソースフェーズ」にドラッグする必要があります。また、ターゲットの情報取得パネルを使用して、2つのターゲット間にターゲットの依存関係を追加する必要があります。

ビルドされたプラグインがビルド製品ディレクトリに表示されている場合、それはフレームワークのリソースディレクトリにもコピーされていないことを意味するわけではありません。Xcodeは、すべてのターゲットをビルドディレクトリにビルドし、それらを最終的な宛先(この場合はフレームワークのリソースディレクトリ)にコピーします(移動しません)。この理由の1つは、製品が複数の最終目的地を持つ可能性があることです。

于 2009-05-20T06:20:09.723 に答える
0

ありがとう、バリー。ファイルのコピー ビルド フェーズを使用しようとしたとき、IB はフレームワークとプラグインの間の接続を解決できませんでした。何らかの理由で、関連するプラグインが見つかりませんでした。

しかし、延々といじくり回すと、思ったより近くにいることがわかりました。を次のように変更CONFIGURATION_BUILD_DIRします。

$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/FrameworkName.framework/Resources/ 

フレームワークの検索パスを更新すると、問題が解決しました。これは、すぐに使用できるプラグイン テンプレート (少なくとも私のマシンでは) の動作ではないため、他の人の助けになることを願っています。

于 2009-05-19T01:01:32.650 に答える