xcode 模块螺栓的伞头不包括头“BFAppLinkResolving.h”

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/29657487/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-09-15 07:00:15  来源:igfitidea点击:

Umbrella Header for Module Bolts does not include header 'BFAppLinkResolving.h'

xcodeswiftparse-platformxcode6bolts-framework

提问by kevin

I'm running an xcode 6.3 project with Parse 1.7.1 (newest version), Swift. I'm getting this issue being raised on my builds. My autocomplete and typing is PAINFULLY slow and I think it maybe related. I've testing out projects and it only happens when the Bolts module is in the project (which is required for Parse).

我正在运行一个带有 Parse 1.7.1(最新版本),Swift 的 xcode 6.3 项目。我在我的构建中提出了这个问题。我的自动完成和打字非常缓慢,我认为这可能相关。我已经测试了项目,只有当 Bolts 模块在项目中时才会发生(这是 Parse 所必需的)。

采纳答案by franciscodlp

As @MaddTheSane pointed, the Bolts framework is missing the modulemapin the last update of Parse (1.7.1).

正如@MaddTheSane 指出的那样,Bolts 框架modulemap在 Parse(1.7.1)的最后一次更新中丢失了。

In the Bolts.Framework create Modules/(if it does not exist) and inside it create a file module.modulemapwith the content shown below. I will suggest removing the current Bolts framework from your project and importing again (the modified one.)

在 Bolts.Framework 创建Modules/(如果它不存在)并在其中创建一个文件module.modulemap,内容如下所示。我会建议从您的项目中删除当前的 Bolts 框架并再次导入(修改后的框架。)

enter image description here

在此处输入图片说明

framework module Bolts {
umbrella header "Bolts.h"

export *
module * { export * }


explicit module BFAppLinkResolving {
    header "BFAppLinkResolving.h"
    link "BFAppLinkResolving"
    export *
}}

回答by Abhay

@franciscodlp - We also need to add another header file (BFWebViewAppLinkResolver.h) - I had to make 2 of them explicit. Below is how the module.modulemap should look like.

@franciscodlp - 我们还需要添加另一个头文件 (BFWebViewAppLinkResolver.h) - 我必须明确其中 2 个。下面是 module.modulemap 的样子。

framework module Bolts {
  umbrella header "Bolts.h"

  export *
  module * { export * }

  explicit module BFAppLinkResolving {
    header "BFAppLinkResolving.h"
    link "BFAppLinkResolving"
    export *
  }
  explicit module BFWebViewAppLinkResolver {
      header "BFWebViewAppLinkResolver.h"
      link "BFAWebViewAppLinkResolver"
      export *
  }
}

回答by user

I'm building a Swift project and linking the Parse SDK through Cocoapods, and I got the Module 'Bolts' not foundmessage. Looks like the Bolts pod didn't include a Swift module, but putting

我正在构建一个 Swift 项目并通过 Cocoapods 链接 Parse SDK,我收到了Module 'Bolts' not found消息。看起来 Bolts pod 没有包含 Swift 模块,但是把

#import <Parse/Parse.h>
#import <Bolts/Bolts.h>

in {project-name}-Bridging-Header.hresolved my issue.

{project-name}-Bridging-Header.h解决我的问题。

回答by MaddTheSane

Does the Bolts framework have a module file in it? if not, you most likely need to import Bolt's umbrella header (and BFAppLinkResolving.h) in your bridging header.

Bolts 框架中是否有模块文件?如果没有,您很可能需要BFAppLinkResolving.h在桥接头中导入 Bolt 的伞头(和)。

Unless you are using functions that are in that header, you can ignore the warning.

除非您使用该标头中的函数,否则您可以忽略该警告。

I would recommend that you contact the developers of Bolts and Parse, as they may be able to offer better help.

我建议您联系 Bolts 和 Parse 的开发人员,因为他们可能会提供更好的帮助。