2014-03-04 4 views
5

Ich entwickle eine Bibliothek und ich habe nächsten Anwendungsfall. Zum Beispiel habe ich das Projekt A, das eine Abhängigkeit vom Projekt B hat. Ich möchte meine pod in Projekt B einrichten, so haben beide Projekt A und Projekt B Zugriff auf meine pod Funktionen. So wird Abhängigkeitskette wie folgt aussehen:Kopiere Header-Dateien in Include-Ordner mit CocoaPods

My Lib 
    | 
    B 
    | 
    A 

Actual-Code kompiliert werden und in Runtime in Projekt A fast automatisch, aber ich kann es nicht kompiliert, da Projekt A nicht Header-Dateien aus meiner Bibliothek nicht sehen. Die Header-Dateien werden in Pods/MyLib/MyLib/CustomIdentifier Verzeichnis (weil s.header_dir = 'CustomIdentifier' Zugriff mit Import wie: #import <CustomIdentifier/Header.h> haben).

Ich möchte nicht in Projekt A direkten Pfad zu Header-Datei angeben (Ich möchte nicht Benutzer müssen zusätzliche Aktion, um meine lib zu installieren). Ich möchte CocoaPods kopieren meine Header-Dateien oder Links zu ihnen in Products/../include Ordner, so dass sie automatisch verfügbar sein werden.

Wie kann ich es tun? Vorzugsweise mit podspec Datei.

Vielen Dank für Ihre Hilfe!

Antwort

1

Sieht aus wie es mit Ordnerpfaden zu tun hat

von docs Zitiert:

header_mappings_dir ein Verzeichnis aus, wo die Ordnerstruktur für die Header-Dateien zu erhalten. Wenn nicht angegeben, werden die Headerdateien abgeflacht.

Beispiele:

spec.header_mappings_dir = 'src/include'

half mir mit einem ähnlichen Problem.

s.header_mappings_dir = 'armadillo-4.200.0/include/' #allows any folders in here to be avail from project. Namely the folder of headers, armadillo_bits

http://guides.cocoapods.org/syntax/podspec.html#header_mappings_dir

+0

ich in meinem Header platzieren möchten '$ BUILT_PRODUCTS_DIR/include', um sie sichtbar durch ein Projekt zu machen, die meine' pod' verwenden. Es sollte durchgeführt werden, wenn das Projekt erstellt, denn in jedem Stadium davor ist es noch nicht definiert – Ossir

+0

ja. Also hier ist ein Update mit Beispiel. – atlex2