Xcode 10: компиляция остановлена ​​из-за ошибок в других файлах - PullRequest
0 голосов
/ 05 июня 2018

При использовании Xcode 10 (Beta 1) и нескольких фреймворков Swift, таких как Eureka , сборка завершается с ошибкой:

/ path / to / Pods / Eureka /Source / Rows / Common / OptionsRow.swift: 1: 1: Компиляция остановлена ​​из-за ошибок в других файлах

К сожалению, настоящая ошибка скрыта и не может быть обнаружена.Кто-нибудь тоже сталкивался с этой проблемой?Мы все еще находимся в первых бета-версиях iOS 12 и Xcode 10, так что это может быть улучшено в будущих версиях инструментов.

1 Ответ

0 голосов
/ 05 июня 2018

Это общее сообщение об ошибке, означающее, что существуют другие ошибки.Настоящая ошибка не скрыта.Это даже написано дважды!

enter image description here

Так что вам просто нужно сделать ваш модуль строго совместимым со Swift 4.1, чтобы справиться с вашей проблемой.В вашем случае сообщение об ошибке:

Перекрывающийся доступ к «действию», но для модификации требуется эксклюзивный доступ;рассмотрите возможность копирования в локальную переменную

Это было предупреждение с Xcode 9.x за прошедший один год , так что вы могли бы исправить это раньшевыпуск Xcode 10.

Ну, просто сделайте то, что предлагает сообщение, и оно будет работать с Xcode 10:

let backgroundColor = self.backgroundColor ?? action.backgroundColor
action.backgroundColor = backgroundColor
let image = self.image ?? action.image
action.image = image

Или используйте исправление, сделанное за 22 дня до вашего вопроса с https://github.com/xmartlabs/Eureka/commit/b0f9adc13a780e76fae25bf00f9adc49726f0d95,, просто используя последнюю версию Eureka:

pod 'Eureka', :git => 'https://github.com/xmartlabs/Eureka.git', :branch => 'master'
...