Преобразование в Swift 5 приводит к ошибке «Несколько команд создает ошибку x86_64.swiftmodule» - PullRequest
1 голос
/ 29 марта 2019

Я пытаюсь заставить 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

IЯ уже пытался перейти на использование 'Legacy Build System', как предлагалось в других подобных вопросах, но я хотел бы перейти на новую систему сборки.

Я также попытался изменить имя модуля продукта в моем тестеtarget, как было предложено в другом вопросе, но это сломало мои тесты.

В противном случае приложение и тесты как строятся, так и работают нормально, я просто получаю ошибку компиляции при запуске инструмента миграции Swift 5.

Любая идея, что здесь происходит, или какие-то документы, которые я могу посмотреть, чтобы лучше понять это?

Спасибо!

1 Ответ

1 голос
/ 30 мая 2019

Мне удалось частично решить эту проблему, изменив свойство SWIFT_MODULE_NAME в поле «Цель теста».

Цель моего теста SWIFT_MODULE_NAME совпадает с именем основного объекта, поэтому я изменил его

...