Преобразование в текущий синтаксис Swift не удалось - «Нет такого модуля» (Swift 4, Xcode 9)

В Xcode 9 я пытаюсь сделать автоматическое преобразование в Swift 4. Сбой со следующим сообщением:

 введите описание изображения здесь

  

Не удалось конвертировать в текущий синтаксис Swift
  Убедитесь, что все выбранные цели успешно собраны с текущей настроенной версией Swift, прежде чем пытаться выполнить миграцию.

Жалуется на отсутствующий модуль. Но когда я делаю обычную сборку, проблем нет. Не уверен, что это актуально, но модуль (который Xcode жалуется, отсутствует) уже был ранее преобразован в Swift 4 (в своем собственном проекте).

Примечание. Здесь не используются кокапод и карфаген.

Примечание. Два решения опробованы (и работают), но не решают основную проблему.

  • Одно из решений заключается в том, чтобы выполнить преобразование вручную (измените версию Swift на 4 в настройках сборки и примените Fix-Its по одному, пока не будет больше ошибок сборки).
  • Другое решение - отключить стороннюю платформу (закомментировать весь код, в котором она используется), выполнить автоматическую миграцию, а затем снова включить платформу. Это может быть довольно сложно с большими проектами.
10 голосов | спросил Nikolay Suvandzhiev 21 stEurope/Moscowp30Europe/Moscow09bEurope/MoscowThu, 21 Sep 2017 11:50:25 +0300 2017, 11:50:25

1 ответ


0

У меня также возникла эта проблема при конвертации моего проекта в Swift 4.0. Похоже, проблема возникает, когда вы пытаетесь конвертировать target, который импортирует фреймворк, который уже есть в Swift 4.0. На своем скриншоте вы пытаетесь конвертировать RecipeTextParser , который импортирует SovaTools , который уже является Swift 4.0.

Я нашел грязное, но рабочее решение. Вы можете использовать более старую (Swift 3.2) версию SovaTools при конвертации. Вы должны НЕ проверить его отметку в окне выбора цели инструмента конвертации. Затем, когда RecipeTextParser 'будет успешно преобразован, вы можете снова использовать версию SovaTools Swift 4.0.

ответил Padavan 30 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowSat, 30 Sep 2017 12:28:07 +0300 2017, 12:28:07

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132