gpt4 book ai didi

iOS Xcode SPM 未能解开父类(super class)

转载 作者:行者123 更新时间:2023-12-01 15:16:16 36 4
gpt4 key购买 nike

我的应用程序由许多项目(框架)组成,一个用于每个主要功能,一个通用框架包含我需要在多个功能中访问的各种东西。

我正在使用 Xcode 11 的 Swift 包管理器来添加依赖项。

通用框架包含一个 RxSwift 依赖项,我在整个项目中都使用它。

当我尝试在我的任何功能框架中使用 RxTest 时,我都遇到了问题。

如果我通过 SPM 直接将 RxTest 添加到测试目标并运行测试,我会得到

failed to demangle superclass of 'class name' from mangled name 'other class name'



和许多

Class 'class name' is implemented in both 'common framework path' and 'test target path'



其中所有这些类都与 Rx 相关。 'failed to demangle' 错误使测试崩溃,并且仅在我尝试初始化 RxTest 类时发生。

如果我将 RxTest 添加到通用框架中,测试运行良好,但是当我运行应用程序时,我得到

dyld: Library not loaded: @rpath/XCTest.framework/XCTest



这是有道理的,因为我正在将一个测试框架添加到一个非测试框架中,这不是一件好事。

所以基本上,我无法获得测试和应用程序都运行良好的配置。应用程序运行或测试运行。

我怎样才能得到这个工作?只有当我在测试目标上构建 RxTest 时,有没有办法在通用框架中包含它?或者 RxTest 是否应该只包含在测试目标中并且我缺少一些配置?

最佳答案

具有 SPM 依赖关系的 Xcode 目前无法处理相互依赖的多个目标中的相同 SPM 依赖关系。目前,每个依赖项只需要位于单个目标中。我现在不知道为什么,但如果尚未提交,我会尝试进行更多调查并提交错误。

关于iOS Xcode SPM 未能解开父类(super class),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58487485/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com