首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“没有这样的模块”在CocoaPods中使用模块化架构

“没有这样的模块”在CocoaPods中使用模块化架构
EN

Stack Overflow用户
提问于 2019-12-27 22:47:55
回答 1查看 386关注 0票数 1

我正在应用这个text中描述的模块化架构。我为系统的每个模块创建了一个子项目。在我的Presentation子项目中,我使用的是RxSwift,所以在我的Podfile中,我所拥有的是:

代码语言:javascript
复制
platform :ios, '10.0'

use_frameworks!

workspace 'ios-swift-template'

target 'Presentation' do 
  project 'ios-swift-template/Modules/Presentation/Presentation.project'
  pod 'RxSwift'
  pod 'RxCocoa'
end

target 'Networking' do 
  project 'ios-swift-template/Modules/Networking/Networking.project'
  pod 'Moya/RxSwift'
end

target 'ios-swift-template' do
end

尽管如此,当我尝试编译项目时,它告诉我BaseViewController (演示模块中的一个类)找不到RxSwift。如果我只尝试构建或运行Presentation Module,则它运行时没有错误。

在我的项目构建阶段,我将所有的模块框架复制到项目中:

为什么在构建期间找不到RxSwift?

EN

回答 1

Stack Overflow用户

发布于 2019-12-27 23:46:24

将pod 'RxSwift‘也添加到目标'ios-swift-template’下,以及主目标可以直接或间接引用的任何其他pod,然后重新运行pod-install。主要目标没有看到内部框架中包含的pod。阅读这篇文章可以得到更多的解释:

https://medium.com/@akfreas/how-to-use-cocoapods-with-your-internal-ios-frameworks-192aa472f64b

如果你深入阅读“iOS中的模块化架构”这篇文章,你会发现他做的也是同样的事情。他首先使用"core_pods“别名定义了RxSwift pod,然后将其包含在框架目标中,同时也包含在应用程序目标中的"application_pods”中。因此,您可以看到,应用程序目标还必须安装RxSwift pod。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59502362

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档