依赖目标之间的循环 - Xcode 13.4.1

3
我在尝试构建项目时,只有在Xcode 13.4.1上才会出现以下错误:
“在目标'#aTargetName'和'#anotherTargetName'之间存在依赖循环;构建可能会产生不可靠的结果。这通常可以通过将目标的Headers构建阶段移动到Compile Sources之前来解决。”
如果需要运行项目,每次都执行“清理构建文件夹”操作就可以解决问题。
以下是项目中的构建阶段:

enter image description here

***2022年1月7日更新: 以下命令可以解决此问题: 打开终端并运行: defaults write com.apple.dt.XCBuild EnableSwiftBuildSystemIntegration 1


你确定你实际上没有循环依赖吗? - Dávid Pásztor
是的,我是。我之前的Xcode版本没有出现任何构建错误。 - Luciano Perez
1
这个帖子可能会有所帮助:[https://developer.apple.com/forums/thread/702349]。 - Dávid Pásztor
请执行以下操作以修复此问题:打开终端并运行 defaults write com.apple.dt.XCBuild EnableSwiftBuildSystemIntegration 1 - Luciano Perez
1个回答

1
我遇到了同样的错误。其他的 Stack Overflow 问题都在讨论更改“Headers”在构建阶段中的顺序或将构建系统更新为旧版。
我没有“Headers”阶段,所以我只是尝试了一下我所拥有的阶段。对于那些拥有多个阶段的人来说,这可能是一个令人望而生畏的建议,因为排列组合呈指数级增长。
对于我自己来说,这里是之前(不起作用)和之后(起作用)的配置。
未起作用: Not Working Build Phases 起作用: Working Build Phases 我不知道为什么其中一个起作用而另一个不起作用,只知道这种变化解决了我的问题。我还注释掉了一些本地化和代码检查脚本,这些脚本在发布时并不必要,只需要在开发/测试构建时运行。我只在架构项目时才会遇到错误,而在构建时则不会。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接