2016-05-05 6 views
17

inherit! :search_pathsが必要な理由(https://guides.cocoapods.org/syntax/podfile.html#abstract_targetから)継承するもの! :search_pathsは何ですか?

# Note: There are no targets called "Shows" in any of this workspace's Xcode projects 
abstract_target 'Shows' do 
    pod 'ShowsKit' 

    # The target ShowsiOS has its own copy of ShowsKit (inherited) + ShowWebAuth (added here) 
    target 'ShowsiOS' do 
    pod 'ShowWebAuth' 
    end 

    # The target ShowsTV has its own copy of ShowsKit (inherited) + ShowTVAuth (added here) 
    target 'ShowsTV' do 
    pod 'ShowTVAuth' 
    end 

    # Our tests target has its own copy of 
    # our testing frameworks, and has access 
    # to ShowsKit as well because it is 
    # a child of the abstract target 'Shows' 

    target 'ShowsTests' do 
    inherit! :search_paths 
    pod 'Specta' 
    pod 'Expecta' 
    end 
end 

CocoaPods自身の例を見た後、私は表示されないのですか? 3つすべてのターゲット、ShowsiOSShowsTVおよびShowsTestsは、親ターゲットからShowsKitにアクセスできます。 (https://guides.cocoapods.org/syntax/podfile.html#inherit_bangから)

inherit!のための具体的な例としては、

target 'App' do 
    target 'AppTests' do 
    inherit! :search_paths 
    end 
end 

任意の明瞭さを追加しませんあなたは私がinherit! :search_pathsが何のためにあるのか理解するのに役立つことはできますか? https://guides.cocoapods.org/syntax/podfile.html#inherit_bang に応じ

+0

あなたは質問を投稿して以来、私たちがそれを使用する理由についていくつか明確になっていますか? – Jobs

+2

残念ながら、いいえ:( – Quentin

+0

これは誰も使用していない機能だと思われます=) –

答えて

2

背後inherit!背後にある目的、(私は同意するだろうこれは非常に明確ではありません)、3の1を提供することです:

利用できるモード:+は:ターゲットはからのすべての動作を継承完成親。 +:noneターゲットは親からの動作を継承しません。 +:search_pathsターゲットは親の検索パスのみを継承します。

この質問の例では、表現されているのは:search_pathsモードです。 3つの異なるモードは、Podプロジェクトをテストするときに異なる役割を果たします。

Xcodeのフレームワーク検索パスに関する追加のリンクhttps://developer.apple.com/library/content/documentation/MacOSX/Conceptual/BPFrameworks/Tasks/IncludingFrameworks.htmlは、私の混乱を解消するのに役立ちました。

関連する問題