无法找到Extension的主机目标

时间:2017-07-31 15:30:38

标签: ios cocoapods

报告

你做了什么?

我尝试运行 pod install 命令

您期望发生什么?

正确安装所有pod依赖项,如1.1.1版本。

反而发生了什么?

  

[!]无法找到myExtension1,myExtension2的主机目标。请将嵌入目标的主机目标添加到Podfile。   某些类型的目标需要主机目标。主机目标是嵌入“子”目标的“父”目标。这些是需要主机目标的示例类型的目标:
   - 框架
   - 应用程序扩展
   - 观看OS 1扩展
   - 消息扩展(与消息应用程序一起使用时除外)

CocoaPods环境

Stack

   CocoaPods : 1.2.1
        Ruby : ruby 2.2.5p319 (2016-04-26 revision 54774) [x86_64-darwin15]
    RubyGems : 2.4.5.1
        Host : Mac OS X 10.12.5 (16F73)
       Xcode : 8.3.3 (8E3004b)
         Git : git version 2.13.0
Ruby lib dir : /Users/dogo/.rbenv/versions/2.2.5/lib
Repositories : master - https://github.com/CocoaPods/Specs.git @ 08682dc5b65d664048f43d7886a018856c692b63

安装源

Executable Path: /Users/dogo/.rbenv/versions/2.2.5/bin/pod

插件

claide-plugins        : 0.9.2
cocoapods-deintegrate : 1.0.1
cocoapods-plugins     : 1.0.0
cocoapods-search      : 1.0.0
cocoapods-stats       : 1.0.0
cocoapods-trunk       : 1.2.0
cocoapods-try         : 1.1.0
slather               : 2.4.2

Podfile

source 'https://github.com/CocoaPods/Specs.git'  

project 'MyProject', 'DebugProduction' => :release , 'Integrated' => :release , 'Mock' => :release, 'DebugMock' => :debug  

platform :ios, '8.0'  

inhibit_all_warnings!  

def all_pods  
pod 'AFNetworkActivityLogger'  
pod 'AFNetworking'  
pod 'AMPopTip', '~> 1.0.0'  
pod 'BBBadgeBarButtonItem', '~> 1.2'  
pod 'Bricks', '~> 0.1.2'  
pod 'bricks-Mantle', '~> 0.1.0'  
pod 'CocoaLumberjack', '~> 2.2.0'  
pod 'Crashlytics'  
pod 'CustomIOSAlertView'  
pod 'Fabric'  
pod 'FBSDKCoreKit', '4.16.0'  
pod 'FBSDKLoginKit', '4.16.0'  
pod 'FBSDKShareKit', '4.16.0'  
pod 'FDKeychain', '~> 1.0.0'  
pod 'FSCalendar'  
pod 'GoogleAnalytics', '~> 3.17.0'  
pod 'GoogleConversionTracking', '~> 3.4.0'  
pod 'GoogleMaps', '2.3.1'  
pod 'HockeySDK', '4.1.6'  
pod 'JVFloatLabeledTextField'  
pod 'LGPlusButtonsView'  
pod 'MaryPopin', '1.4.2'  
pod 'MBProgressHUD'  
pod 'MGSwipeTableCell'  
pod 'MMWHaleImageCropper', '~> 0.1'  
pod 'NSStringMask', '1.2'  
pod 'ObjectiveSugar', '~> 1.1.0'  
pod 'PromiseKit', '~> 1.7.0'  
pod 'Realm', '~> 2.3.0'  
pod 'REFrostedViewController', '~> 2.4'  
pod 'RegExCategories', '~> 1.0'  
pod 'SMXMLDocument', '~> 1.1'  
pod 'SpotlightHandler', :git => 'https://github.com/renatosarro/SpotlightHandler'  
pod 'SRMonthPicker', '~> 0.2.10'  
pod 'TLInputsChainHelper', :git => 'https://github.com/thiagolioy/TLInputsChainHelper.git'  
pod 'TLJsonFactory'  
pod 'UITintedButton'  
pod 'XMLDictionary', '1.4'  
pod 'ZBarSDK'  
pod 'ZSWTaggedString', '~> 1.1'  
pod 'ZSWTappableLabel', '1.3'  
end  

target :MyProject do  
all_pods  
end  

target :'MyProject-cal' do  
all_pods  
end   

target :MyProjectExtension do  
pod 'GoogleAnalytics', '~> 3.17.0'  
end  

target :MyProject2 do  
all_pods  
end  

target :'MyProject2-cal' do  
all_pods  
end   

target :MyProjectExtension2 do  
pod 'GoogleAnalytics', '~> 3.17.0'  
end  

target :MyProjectTests do  
inherit! :search_paths  
pod 'Expecta'  
pod 'OCMock'  
pod 'Specta', '1.0.5'  
pod 'TLJsonFactory'  
end 

4 个答案:

答案 0 :(得分:9)

这种情况发生在我身上,因为我的Podfile中有一个已取消激活的扩展目标(作为主目标的依赖项被删除)。

删除目标修复它。

答案 1 :(得分:7)

问题不在Podfile中,而在项目中!

要解决:

  • 转到XCode
  • 选择您的主机目标。
  • 打开目标的“常规”页面
  • 在“嵌入式​​二进制文件”部分中,确保存在您的EXTENSION目标。 enter image description here

  • 在您的Podfile中,您应该具有:

    target 'HostApp' do .... target 'YourExtension' do .... end end

答案 2 :(得分:0)

要解决他的问题,我必须从主机应用程序的Embedded Binaries中删除扩展名的appex,然后再次添加(因为问题是在解决合并冲突之后发生的)

然后我运行了“ pod install”,它成功了

答案 3 :(得分:0)

您必须在构建阶段->依赖项和构建阶段->为您的主要应用目标嵌入应用扩展