2016-07-17 66 views
3

試圖ParseLiveQuery cocoapod融入我的項目,但建設我不斷收到錯誤時:包括框架模塊錯誤內非模塊化頭的

Include of non-modular header inside framework module error 'Bolt.BFCancellation'

enter image description here

我安裝ParseLiveQuery (連同Parse)通過cocoapods。這裏是我的podfile:

use_frameworks! 

pod 'ParseLiveQuery' 
pod 'Parse' 

post_install do |installer| 
    installer.pods_project.build_configuration_list.build_configurations.each do |configuration| 
    configuration.build_settings['CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES'] = 'YES' 
    end 
end 

我還設置允許非模塊在構建設置包括框架模塊,但仍獲得此錯誤。

回答

5

剛剛碰到了這個自己。我將頭文件添加到框架的傘頭,然後將其作爲Public添加到Headers部分。 (我添加可達LIB)

enter image description here

到目前爲止,這似乎是爲我工作無故障。

+0

在這種情況下,可達性將在框架外部可見。但我不希望這些可達性類被暴露,我該怎麼做? - – User9527

+0

我不得不想一點,但它真的很重要嗎?可達性是一個「公共」圖書館,那麼通過圖書館「可用」的缺點是什麼? – Nick

+1

是的,這很重要。由於我的框架中有很多OC代碼。我不希望我的框架的用戶看到這些OC代碼。無論如何,我發現了另一種解決方案:使用這樣的模塊:https://stackoverflow.com/questions/42085217/swift-project-missing-required-modules-when-import-a-modular-framework – User9527