Objective c 没有此类模块<;产品模块名称>;在XCode单元测试中

Objective c 没有此类模块<;产品模块名称>;在XCode单元测试中,objective-c,xcode,swift,unit-testing,compilation,Objective C,Xcode,Swift,Unit Testing,Compilation,我有一个混合了objective-c和Swift的项目,我试图为它编写单元测试。 我的项目名称是:Alphaproject 我的产品模块名称是:Alphaproject 我在我的主要目标(Alphaproject)中设置为是定义模块 并设置为YES EnableTestability,以便仅在此同一目标中进行调试 在我的测试类中,我尝试导入我的产品模块名称: @可测试导入项目 补充说明: 我的所有项目文件都只是主目标的一部分 我的测试文件只是测试目标的一部分 我的测试方案设置为生成调试配置 我

我有一个混合了objective-c和Swift的项目,我试图为它编写单元测试。 我的项目名称是:Alphaproject 我的产品模块名称是:Alphaproject 我在我的主要目标(Alphaproject)中设置为是定义模块 并设置为YES EnableTestability,以便仅在此同一目标中进行调试

在我的测试类中,我尝试导入我的产品模块名称:

@可测试导入项目

补充说明:

  • 我的所有项目文件都只是主目标的一部分
  • 我的测试文件只是测试目标的一部分
  • 我的测试方案设置为生成调试配置
  • 我还尝试清理生成文件夹(ALT+clean)
  • 该项目在编译或尝试运行测试时没有任何错误,但“无此类模块项目”除外

还有其他想法吗?

好的!问题是因为我在调试配置中使用了arm64来实现有效的体系结构。 由于主目标在有效的体系结构中也不包含arm64,它显然找不到模块。。。 我认为苹果可以在这里更好地显示正确的错误。(苹果,请听我说)


在我的例子中,最初的Xcode项目是Objective-C,我添加了基于Swift的测试目标,导入失败。我确保在构建设置中将
Defines Module
设置为
YES
,但仍然得到了所示的错误。我的解决办法是在Objective-C主项目中添加一个桥接头。

我也遇到了同样的问题,但在进入构建设置并在主目标和测试目标下设置“Defines Modules”=YES后,问题得到了解决。