转换为 Swift 5 会产生 'Multiple commands produce x86_64.swiftmodule' 错误

Conversion to Swift 5 produces 'Multiple commands produce x86_64.swiftmodule' error

我正在尝试让 Xcode 10.2 将我的混合 Objective-C / Swift 项目转换为使用 Swift 5。但是,每当我这样做时,编译文件由于以下错误

error: Multiple commands produce '/Users/<User>/Library/Developer/Xcode/DerivedData/SurgEval-chcbdqcuvbtwckedraqzdhwbsqpm/Build/Intermediates.noindex/SwiftMigration/SurgEval/Products/Debug-iphonesimulator/MYAPP.swiftmodule/x86_64.swiftmodule':
1) Target 'MYAPPTests' (project 'SurgEval'): Ditto /Users/alenox/Library/Developer/Xcode/DerivedData/SurgEval-chcbdqcuvbtwckedraqzdhwbsqpm/Build/Intermediates.noindex/SwiftMigration/SurgEval/Products/Debug-iphonesimulator/MYAPP.swiftmodule/x86_64.swiftmodule /Users/<User>/Library/Developer/Xcode/DerivedData/SurgEval-chcbdqcuvbtwckedraqzdhwbsqpm/Build/Intermediates.noindex/SwiftMigration/SurgEval/Intermediates.noindex/SurgEval.build/Debug-iphonesimulator/MYAPPTests.build/Objects-normal/x86_64/MYAPP.swiftmodule
2) Target 'SurgEval' (project 'SurgEval'): Ditto /Users/<User>/Library/Developer/Xcode/DerivedData/SurgEval-chcbdqcuvbtwckedraqzdhwbsqpm/Build/Intermediates.noindex/SwiftMigration/SurgEval/Products/Debug-iphonesimulator/MYAPPL.swiftmodule/x86_64.swiftmodule /Users/<User>/Library/Developer/Xcode/DerivedData/SurgEval-chcbdqcuvbtwckedraqzdhwbsqpm/Build/Intermediates.noindex/SwiftMigration/SurgEval/Intermediates.noindex/SurgEval.build/Debug-iphonesimulator/SurgEval.build/Objects-normal/x86_64/MYAPP.swiftmodule

我已经尝试按照其他类似问题中的建议切换到使用 'Legacy Build System',但我想迁移到新的构建系统。

我也曾尝试按照另一个问题中的建议更改测试目标中的产品模块名称,但这破坏了我的测试。

应用程序和测试都构建 运行 正常,否则,我只是在 运行 使用 Swift 5 迁移工具时遇到编译错误。

知道这里发生了什么,或者我可以查看一些文档以更好地理解它吗?

谢谢!

我通过调整测试目标中的 SWIFT_MODULE_NAME 属性 部分解决了这个问题。

我的测试目标 SWIFT_MODULE_NAME 与主要目标名称相同,所以我更改了它