ich einen iOS-App habe, die von einer App besteht, ein Bündel von meinem benutzerdefinierten Rahmen, und eine Reihe von Dritter framweorks:XCode6: Empfangen Fehler „Fügen von nicht-modularem Kopf innerhalb Rahmenmodul“
App
MyFramework1
MyFramework2
AFNetworking.framework
Mantle.framework
..
erhalte ich die Fehlermeldung „Fügen von nicht-modularem Kopf innerhalb Rahmenmodul“ mit folgenden Struktur:
App/AppDelegate.m
#import <MyFramework2/MyFramework2.h>
MyFramework2/MyFramework2.h
#import "MyClass.h"
MyClass.h
#import <Mantle/Mantle.h> <-- Error happens here
MyFramework2 baut selbst.
Versuch App nicht mit dem Fehler zu bauen „Include von nicht-modularen Kopfinnenrahmenmodul“ an der Linie, die Mantle.h importiert.
Dieses Problem geht weg, wenn ich Mantle.h in der Datei .m
importieren, aber ich kann das nicht tun, da meine Klasse von MTLModel
erbt, die in Mantle definiert ist.
Dieses Problem wurde behoben here, aber es ist nicht Swift-spezifisch.
Vorschläge gibt es (1) stellen Sie sicher, dass alle benutzerdefinierten Framework-Header öffentlich sind. Sie sind. Und (2) gehen Sie zu Build-Einstellungen unter "Ziel" und setzen Sie "Nicht-modulare Includes in Framework-Modulen zulassen" auf YES
.
Weiß jemand, warum das passiert und wie man es beheben kann? Wird die Einstellung "Nichtmodulare Includes in Framework-Modulen zulassen" auf "YES" als "Good Practice" festgelegt? Warum ist das ein Fehler?
Danke.
Hinweis: Dies ist ein Problem, auch wenn Sie auf der CLANG eingeschaltet haben Einstellung für „Allow Nicht modular In Rahmenmodule Enthält“, die Ihre Antwort löst. Vielen Dank. –
@Nikos M. können Sie bitte einen Screenshot hinzufügen. Ich kann das Dropdown nicht sehen. Bitte helfen Sie. Vielen Dank – Bonnke
Wo ist das Dropdown-Menü für die Zielmitgliedschaft? – lenhhoxung