2015-10-21 20 views
12

Tôi đang cố gắng xây dựng một khung công tác CocoaPods riêng với các phụ thuộc nhóm khác.Khuôn khổ CocoaPods với các phụ thuộc - bao gồm tiêu đề không mô-đun bên trong mô-đun khuôn khổ

Trong số những người khác, tôi đã thêm Parse như một sự phụ thuộc trong file podspec:

s.dependency 'Parse' 

Tuy nhiên, khi tôi cố gắng lint nó,

pod lib lint MyPrivateSpec.podspec --verbose --sources '[email protected]:MY_BITBUCKET_NAME/specs.git,https://github.com/CocoaPods/Specs' 

tôi nhận được các lỗi sau đây:

Target Support Files/Parse/Parse-umbrella.h:3:9: note: in file included from Target Support Files/Parse/Parse-umbrella.h:3:

ERROR | xcodebuild: Parse/Parse/Parse.h:12:9: error: include of non-modular header inside framework module 'Parse.Parse'

[and more of these types of errors in the following lines ...]

Tôi đã xem hầu như mọi câu hỏi liên quan được hỏi về SO và trong các vấn đề github, nhưng tôi không thể tìm thấy bất kỳ hing đã làm việc cho tôi. Có ai có kinh nghiệm những vấn đề này, hoặc là quen thuộc với lý do tại sao điều này không hoạt động?

Trả lời

2

Đây không phải là vấn đề với chính thư viện Parse. Tôi chạy vào một tình huống tương tự một thời gian trở lại khi tôi đã cố gắng sử dụng thư viện Parse bên trong một khuôn khổ tôi đã xây dựng cho iOS.

Lỗi có nghĩa là có một tiêu đề được bao gồm trong một trong các tệp công khai .h của Parse không thuộc về một mô-đun. Trong trường hợp của Parse, đây là <sqlite3.h> nếu tôi nhớ chính xác. Nếu không loại bỏ điều này khỏi các tiêu đề công khai của Parse, sẽ không thể xây dựng một mục tiêu khung công tác cũng bao gồm Parse. Điều này sẽ được đệ trình như một lỗi với Parse để họ có thể làm việc trên một bản nâng cấp để hỗ trợ xây dựng khung mô-đun.

Do sự cần thiết cho dự án của tôi để xây dựng một mục tiêu khung tôi đã phải vượt qua bằng cách sử dụng Parse trong dự án của tôi như là kết quả của các bên trên.

Đây là một tham chiếu đến một vấn đề tương tự với câu trả lời tương tự: https://stackoverflow.com/a/24728646/296708

+0

Có vẻ như rằng 'sqlite3.h' không phải là ở nơi công cộng 'file .h' Parse của nữa, nhưng vấn đề vẫn còn đó. 'Tìm kiếm" sqlite3.h " in. ./Pods/Parse/Parse/Internal/LocalDataStore/SQLite/PFSQLiteDatabase.m:13:#import ./Pods/Parse/Parse/Internal/LocalDataStore/SQLite/PFSQLiteDatabaseResult.m:12:#import ./Pods/Parse/Parse/Internal/LocalDataStore/SQLite/PFSQLiteStatement.m:12:#import ./Pods/Parse/Parse/Internal/PFDateFormatter.m:12:#import ' –

+0

Điều cần biết. Sau đó, tôi đoán rằng vẫn có thể có một thư viện Objective-C hoặc C khác được đưa vào một trong các tệp header của Parse .h vẫn gây ra lỗi "bao gồm tiêu đề không phải mô-đun" nếu bạn vẫn thấy lỗi này. –

+0

Có, và vì nó có thể được sao chép bằng cách bắt đầu từ 'pod lib create xxx', tôi đã tạo ra một vấn đề trong github để tham khảo của Parse: https://github.com/ParsePlatform/Parse-SDK-iOS-OSX/issues/673 –

Các vấn đề liên quan