2015-03-16 5 views
42

Nach der Aktualisierung auf CocoaPods 0.36.x kann ich keine Importe in meine Bridging-Header.h-Datei hinzufügen. Ich bekomme die "DBsphereView.h Datei nicht gefunden".Wie referenzieren Header-Dateien in Bridging-Header.h nach der Aktualisierung von CocoaPods auf 0.36.x und höher?

Die Datei ist in der Tat in:

"Pods/DBSphereTagCloud/DBSphereView.h" 
"Headers/public/DBSphereTagCloud/DBSphereView.h" 
"Headers/private/DBSphereTagCloud/DBSphereView.h" 

Meine Brücke Datei:

#ifndef Loan_Bridging_Header_h 
#define Loan_Bridging_Header_h 
#import "DBSphereView.h" 
#endif 

Ich bin in der Lage Frameworks zu verwenden. Ich habe einen Verweis auf einen bekannten Framework (Alamofire), und es funktioniert super!

Mein podfile:

source 'https://github.com/CocoaPods/Specs.git' 
use_frameworks! 
pod 'DBSphereTagCloud', '~> 1.0' 
pod 'Alamofire', '~> 1.1' 

Vor dem Update hatte ich keine Probleme mit Header-Dateien importieren.

Wie referenziere ich Header-Dateien in Bridging-Header.h nach der Aktualisierung von CocoaPods auf 0.36.x?

Vielen Dank!

EDIT:

Ich versuchte auch, ein eigenes Projekt zu erstellen, die auf dem Beispiel basiert „Get Started“ von cocoapods.org, ohne Erfolg. Nach der Verwendung von Frameworks kann ich anscheinend nicht auf Header-Dateien in meiner Bridging-Header-Datei verweisen. Ich muss etwas Detail vermissen?

Antwort

96

In Ihrem Podfile Sie use_frameworks! angegeben.

Als Ergebnis wird der Objective-C-Code, den Sie als Abhängigkeit einschließen (DBSphereTagCloud), als Framework anstelle einer statischen Bibliothek gepackt. Weitere Informationen finden Sie unter CocoaPods 0.36 - Framework and Swift Support.

Als Konsequenz benötigen Sie keine Bridging-Header-Datei. Es reicht, wenn Sie hinzufügen:

import DBSphereTagCloud 

in allen Swift-Dateien, die dieses Modul benötigen.

+0

Wie importieren, wenn ich Objective-C & swift Dateien in meinem Projekt mischen und wollen DBSphereTagCloud.h benutzen? –

+0

Für Swift-Datei kann ich DBsphereTagCloud.h [wie Sie DBSphereTagCloud importieren] aber für Objective-C-Datei erfolgreich importieren? –

+0

Kratzte mich am Kopf, als Ventokenfield nicht mehr funktionierte. Vielen Dank! – ObjectNameDisplay

4

Versuchen Sie folgendes:

import <DBSphereTagCloud/DBSphereView.h> 
import <DBSphereTagCloud/DBSphereView.h> 
-1

Für mich ...

Original-

import "<Folder/File.h>" 

Wechsel zu

import <Folder/File.h> 
+0

haha ​​.. Get down down-voting, wenn das tatsächlich für mich funktionierte. –

-1

Im Projekt> Einstellungen Erstellen> Suchpfade> Rubrik Suchpfade

Anzahl:

"$ {PODS_ROOT}/Headers/Public/[Name des Ordners, der pod-Dateien enthalten sind, in]"

, dass Sie

installiert für jeden pod Sie
49

ich Probleme damit hatte. Mein Bridging-Header hat keine Pod-Bibliotheken gefunden. Ich habe herausgefunden, dass ich das tun muss.

enter image description here

+0

Ich hatte Probleme mit einem Framework nach dem Einschalten von use_frameworks! Ich erhielt den Fehler "MTLModel.h nicht gefunden" in einer Obj-C-Klasse, die in meinem Bridging-Header referenziert wurde. Das Hinzufügen von Pods zu den Suchpfaden der Benutzerheader löste, wie diese Antwort sagt, mein Problem. – pinkeerach