我和我的团队都停留在涉及基地项目+民营豆荚里面的一些协议,一个奇怪的现象。
我们的问题是,我们不能访问某些从我们的基本应用程序代码(协议)的标识符(在私有POD的定义)。
显然,我们的问题似乎是完全一样在这2个堆栈溢出线程所描述的,但他们的解决方案还没有与我们合作。
主题1: 源文件没有找到斯威夫特
主题2: CocoaPod安装,但没有看到斯威夫特代码
我们正在使用的骨架是这个:
我们共享POD(与协议,我们不能从我们的基本应用中看到)的定义与此.podspec文件:
Pod::Spec.new do |s|
s.name = "Commons"
s.version = "0.1.10"
s.summary = "Commons framework"
s.description = <<-DESC "Commons framework"
DESC
s.homepage = "http://EXAMPLE/Commons"
s.license = { :type => "Commercial" }
s.author = { "Author" => "author@mail.mail" }
s.source = { :git => "GITLAB_PRIVATE_URL/commons-iOS-Pod.git", :tag => s.version }
s.source_files = "Commons", "Commons/**/*.{h,m,swift}"
s.exclude_files = "Commons/Exclude"
end
从我们的基本应用程序,我们有以下Podfile(让我们共享荚到我们的主要xcworkspace)。
# Uncomment this line to define a global platform for your project
platform :ios, '8.0'
target 'ios-appbase' do
# Comment this line if you're not using Swift and don't want to use dynamic frameworks
use_frameworks!
pod 'Alamofire'
pod 'ViewDeck'
pod 'JLRoutes'
pod 'Commons', :git => 'GITLAB_PRIVATE_URL/commons-iOS-Pod.git', :tag => '0.1.4', :branch => 'develop'
pod 'RestManager', :git => 'GITLAB_PRIVATE_URL/RestManager-iOS-Pod.git', :tag => '0.1.3'
pod 'BaseClasses', :git => 'GITLAB_PRIVATE_URL/BaseClasses-iOS-Pod.git', :tag => '0.1.3'
pod 'DesignManager', :git => 'GITLAB_PRIVATE_URL/DesignManager-iOS-Pod.git', :tag => '0.1.2'
end
我们已经定义了我们的协议是公共的(因为它的预期做,因为它生活在“荚”项目中)。
还有什么应该寻找到?
PS:不只是我们自定义的协议是我们的主要应用程序的“隐形”,但也协议里面Alamofire,这是包含在我们的主应用程序的另一盒定义。 我们尝试使用它们,抱怨的XCode在编译时。
提前致谢。 问候。
EDIT1:缩小我们的问题,我们认为它的东西在编译时间发生的事情。 为什么? 由于Xcode是能够解决故障符号按CMD +点击(在我们的豆荚文件结构定义了两个协议),但编译器无法做到这一点,它是一个与错误“未申报类型的使用”的抱怨。