Umbrella Header для модулей Bolts не включает заголовок 'BFAppLinkResolving.h'

Я запускаю проект xcode 6.3 с Parse 1.7.1 (новейшая версия), Swift. Я поднимаю эту проблему на своих сборках. Моя автозаполнение и ввод текста БОЛЬШОЙ медленно, и я думаю, что это может быть связано. Я тестирую проекты, и это происходит только тогда, когда модуль Bolts находится в проекте (который требуется для Parse).

Ответ 1

Как указывал @MaddTheSane, в раме Bolts отсутствует modulemap в последнем обновлении Parse (1.7.1).

В файле 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 *
}}

Ответ 2

@franciscodlp - Нам также нужно добавить другой файл заголовка (BFWebViewAppLinkResolver.h) - мне пришлось сделать 2 из них явным. Ниже показано, как должен выглядеть модуль .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 *
  }
}

Ответ 3

Есть ли в базе Bolts файл модуля? если нет, вам, скорее всего, потребуется импортировать заголовок зонтика Bolt (и BFAppLinkResolving.h) в заголовок моста.

Если вы не используете функции, находящиеся в этом заголовке, вы можете игнорировать это предупреждение.

Я бы рекомендовал вам связаться с разработчиками Bolts and Parse, так как они могут предложить лучшую помощь.

Ответ 4

Я создаю проект Swift и свяжу Parse SDK через Cocoapods, и я получил сообщение Module 'Bolts' not found. Похоже, что модуль Bolts не включал модуль Swift, но при этом

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

в {project-name}-Bridging-Header.h разрешил мою проблему.