使用Cocoapods和多个目标时,如何配置SwiftGen?
我有一个包含两个目标的项目(MyProject和MyProject Dev),它与SwocoGen集成了Cocoapods。
我可以毫无问题地建立第一个目标。然而,' Dev'目标总是失败。脚本阶段是Build Phases的最后一步,但是之前或之后运行它似乎没有任何区别。
失败后,我发现了以下情况:
SwiftGen版本I使用的是5.2.1 Xcode 9.2,针对iOS 10.0
从版本5开始的SwiftGen需要一个配置文件,所以我按如下方式设置了一个:
output_paths: Sources/Generated
storyboards:
- paths: MyProject/Storyboards/Base.lproj
templateName: swift4
output: MyProject/Storyboards/Storyboards.swift
params:
ignoreTargetModule: true
到目前为止,我查找了文档和以下问题: https://github.com/SwiftGen/SwiftGen/issues/273
然而,区别在于我使用不同类型的SG安装而我的项目无法构建(而不是简单地不生成任何资源)
清理项目,构建文件夹和删除派生数据无效。我假设我可能在配置设置中遗漏了一些内容,但我无法看到它会是什么。
这里的第一个问题,如果我错过了某些内容,请道歉,我将很乐意编辑。
答案 0 :(得分:1)
我在生成Storyboard
文件时遇到了同样的问题。尝试修改配置文件:
params:
ignoreTargetModule: true
module: <YOUR_PROJECT_NAME>
希望它会有所帮助。
答案 1 :(得分:0)
犹豫不决称这是一个解决方案,它更像是一种解决方法,但以下方法至少允许构建和运行项目。
SwiftGen创建的Strings.swift文件链接到两个目标,因此即使在一个方案中运行脚本之后,该文件中的资源也可用于常规目标和开发目标。
希望这有助于某人。