Ios 你继承了什么!:搜索路径吗?

Ios 你继承了什么!:搜索路径吗?,ios,xcode,cocoapods,Ios,Xcode,Cocoapods,看了CocoaPods自己的例子后(来自) 我不明白为什么inherit!:是否需要搜索路径?所有3个目标,ShowsiOS、ShowsTV和showstest都可以从其父目标访问ShowsKit inherit的具体示例(从)没有增加任何清晰度 target 'App' do target 'AppTests' do inherit! :search_paths end end 你能帮我理解什么是继承吗搜索路径是为了继承背后的目的,根据 (我同意这一点不是很清楚),是提供三种

看了CocoaPods自己的例子后(来自)

我不明白为什么
inherit!:是否需要搜索路径
?所有3个目标,
ShowsiOS
ShowsTV
showstest
都可以从其父目标访问
ShowsKit

inherit的具体示例(从)没有增加任何清晰度

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

你能帮我理解什么是继承吗搜索路径
是为了

继承背后的目的,根据 (我同意这一点不是很清楚),是提供三种可用模式之一:

  • :完成
    目标从父级继承所有行为
  • :无
    目标不从父级继承任何行为
  • :搜索路径
    目标仅继承父级的搜索路径
在这个问题的例子中,表达的是
:search_paths
模式。在测试Pod项目时,这三种不同的模式起着不同的作用


用于修饰或说明Xcode中的框架搜索路径,它帮助我消除了一些困惑。

CocaPods和inherit

具有依赖关系的内部目标可以使用此功能。最好的例子是使用
app-target
Test-target
。在这种情况下,您可以在
Podfile

查看生成的
pod/Targets支持文件/
目录并进行比较

Pods-<App_target_name>/Pods-<App_target_name>.<debug/release>.xcconfig
Pods-<Test_target_name>/Pods-<Test_target_name>.<debug/release>.xcconfig
pod-对于不同的
inherit,它们是不同的设置

如果使用
inherit!:搜索路径
-
框架搜索路径
标题搜索路径
。。。的内部目标从外部目标继承,并传递到
生成设置中的相应字段


inherit!的用例:完成
。当您开发一个具有第三方动态框架的框架时,您有一个测试目标。如果您不这样做并运行测试,您将得到
dyld:Library not loaded

自从您发布问题以来,您是否清楚了我们为什么使用它?不幸的是,否:(似乎这是一个没有人使用过的函数=)
target 'App' do
  target 'Tests' do
#    inherit! :none            # empty
#    inherit! :complete        # by default if you do not specify any inherit!
#    inherit! :search_paths    # uses only `search` paths 
  end
end
Pods-<App_target_name>/Pods-<App_target_name>.<debug/release>.xcconfig
Pods-<Test_target_name>/Pods-<Test_target_name>.<debug/release>.xcconfig