Ответ 1
Когда вы прекращаете сборку проекта, когда компилятор находится в середине чего-то "важного", эта ошибка может появиться. В этом случае повторная сборка проекта и его завершение обычно приводит к исчезновению этой ошибки.
Когда я пытаюсь собрать свое приложение с XCode, ошибка прерывает процесс сборки:
CompileStoryboard
командыCompileStoryboard
с ненулевым кодомCompileStoryboard
Иногда вместо этого отображается эта ошибка:
CompileSwift
командыCompileSwift
с ненулевым кодомCompileSwift
У меня включена новая система сборки.
Что я могу сделать, чтобы это исправить?
Когда вы прекращаете сборку проекта, когда компилятор находится в середине чего-то "важного", эта ошибка может появиться. В этом случае повторная сборка проекта и его завершение обычно приводит к исчезновению этой ошибки.
Закрытие Xcode для меня не имело никакого эффекта. Вместо этого я очистил проект, используя Command Shift K.
Я также нашел другую причину: у меня была ссылка на раскадровку к другой раскадровке, которую я удалил. Быстрое решение было удалить это.
Это известная проблема с Swift 4.2 и Xcode 10. Я нашел здесь статью, которая исправила ее для меня: https://github.com/Yummypets/YPImagePicker/issues/236
Короче говоря, перейдите к настройкам сборки ваших проектов, добавьте пользовательский параметр с именем SWIFT_ENABLE_BATCH_MODE и установите для него значение NO.
Ранее я пробовал каждый из предложенных здесь методов (перестройка, выход из Xcode, очистка и перестройка, очистка файлов производных данных). Никто из них не работал.
После того, как я добавил пользовательскую настройку сборки в соответствии со статьей, Swift сообщил мне об истинной ошибке. В моем случае это было пропущено}, но это может быть любым количеством проблем.
Эта ошибка произошла со мной, когда я забыл изменить свойства объекта перед созданием подкласса NSManagedObject. Решено:
Entity+CoreDataClass.swift
и Entity+CoreDataProperties.swift
.Current Product Module
и "кодовый код" на Manual/None
.Я также столкнулся с той же проблемой в xcode 10 и попробовал все предоставленные решения, но ничего не работал.
Затем я удалил все файлы и папки из следующей папки:
/Users/meenakrishna/Library/Developer/Xcode/DerivedData
и это работало как шарм.
Если у вас несколько целей, в которых две или более цели имеют файлы с тем же именем, проверьте целевое членство этих файлов в Инспекторе файлов. Ошибка возникает, когда несколько экземпляров одинаково названного файла устанавливают целевое членство для одной и той же цели.
У меня была ошибка Command LinkStoryboards failed with a nonzero exit code
, и я обнаружил, что использовал внешнюю раскадровку со ссылкой на несуществующую раскадровку. Недавно я изменил имя файла раскадровки, поэтому изменение ссылки со "старого" на "новое" решило это для меня.
У вас может не быть той же самой ошибки, что и у меня, но более простой способ найти более подробное объяснение этой ошибки заключается в следующем:
Надеюсь, это поможет. Пожалуйста, мне известно, что я отвечаю из опыта другой ошибки, о которой был задан этот вопрос, но я считаю, что этот совет должен помочь вам справиться с подобными проблемами!
В моем случае у меня была чистая папка сборки, затем перезапусти мой Mac, после чего он заработал
У меня был JSONwebtoken
модуль JSONwebtoken
и это вызывало проблемы. Мне нужно было удалить папку CommonCrypto, которая находится в JSONWebtoken
pod JSONWebtoken
. Вот ссылка ->, объясняющая проблему. Это начало происходить в Xcode 10.
В моем случае я использовал слишком сложные инициализации внутри расширения класса. Это внезапно сломало мою сборку.
class MyClass { }
extension MyClass {
static var var1 = "", var2 = "", var3 = "", var4 = "", ...., var20 = ""
}
Постановили:
class MyClass { }
extension MyClass {
static var var1 = "",
static var var2 = "",
static var var3 = ""
static var var4 = "", ....,
static var var20 = ""
}
В моем случае это был пустой каталог активов, когда я его удалял, все снова было хорошо.
Сбой команды CompileSwift с ненулевым кодом завершения
Эта ошибка возникает при переносе кода из Xcode 9 в Xcode 10+. Это связано с тем, что любое имя класса конфликтует с существующими классами Apple. Например: состояние, событие и т.д.
Поэтому сначала измените имя класса/структуры, если оно существует в вашем коде, например "State", на "StateDetail".
Если в целевой объект добавлен Info.plist, уберите с него галочку, чтобы он не копировал комплект приложений (последняя причина безопасности Xcode10).
И построить код снова !!!
Переход на устаревшую систему сборки исправил проблему для меня
В моем случае проблема заключалась в том, что я назначил класс .swift viewController в раскадровке, в то время как проект был Objective C.
У меня есть проблема, подобная этой, и мое решение состоит в том, чтобы изменить мелочь в настройках сборки:
SWIFT_COMPILATION_MODE = singlefile;
SWIFT_OPTIMIZATION_LEVEL = "-O";
это работает для меня
Если вы столкнулись с такой ошибкой в новой версии MacOS.
xcrun: ошибка: неверный путь активного разработчика (/Library/Developer/CommandLineTools), отсутствует xcrun в: /Library/Developer/CommandLineTools/usr/bin/xcrun
Это означает, что вам нужно установить командную строку XCode, открыть терминал и запустить эту команду:
$ xcode-select --install
В xcode 10.1 все еще есть ошибка, просто очистите проект и попробуйте снова.
В моем случае это было переименование файла в существующий файл в другой папке (группе) по ошибке, просто переименуйте его в то, что было, тогда ошибка исчезла
Цели должны быть указаны с соответствующими данными, такими как appicon
Очистка папки Build из меню продукта делает свою работу, но каждый раз, когда я меняю тип симулятора (модель iPhone), он снова и снова выглядит как ошибка Xcode. Я использую Xcode-10.1.
Поскольку у этой проблемы, похоже, есть десятки возможных решений, а первопричина может быть очень расплывчатой, я перейду к своей ситуации. Половина моих модулей не CompileSwiftSource
с какой-то CompileSwiftSource
, но только в архиве. Я все еще был в состоянии построить для устройства и симулятора просто отлично. Я попробовал многие (если не все) решения, предложенные здесь, но не повезло. В одном из модулей перед ошибкой CompileSwiftSource
произошла немного другая ошибка, поэтому я перешел к обновлению и попытался исправить этот единственный модуль. Это была библиотека Cache
для iOS, которая давно не обновлялась. Был ответвление, которое решало проблему с обновлением до Xcode 10.2, которое я смог обновить до и после этого, все другие проблемы решили сами. Так что ищите один выброс в ваших модулях, если вы получаете кучу их ошибок и начните с них.
Для меня проблема была в том, что в моем Podfile я не помещал use_frameworks!
, Я просто раскомментирую эту строку, снова запустив pod install
на терминале. И это исправлено.
Это было прокомментировано, так как приложение было полностью сделано на Objective-C. Поскольку приложение теперь использует Swift, мне пришлось внести это изменение в Podfile
У меня была та же ошибка. Перезапуск XCode и перекомпиляция. Исправил проблему для меня.
Я столкнулся с этой ошибкой, когда обновлял свой проект с Swift 4 до 5. Сначала я обновил все свои модули до их последних версий. Когда я строил, некоторые модули показывали эту ошибку.
Следующие шаги решили эту проблему для меня:
Podfile
из Podfile
pod install
для удаления всех установленных pod install
pod deintegrate
для удаления поддержки CocoaPodsPodfile.lock
и .xcworkspace
из моего проекта, поэтому больше нет CocoaPods.xcodeproj
Podfile
pod install
для реинтеграции CocoaPods и добавления моих pods.xcworkspace
Теперь у меня есть только ошибки в моем собственном коде проекта, связанные с различием в версии Swift, которую я сделал. Моя работа сейчас состоит в том, чтобы исправить их.
Мне помогло установить Compilation Mode
для Incremental
для всех конфигураций в настройках Target Build Settings
. В режиме компиляции Whole module
меня появились ошибки. Но эта настройка сделала проект медленнее.
Хорошо, у меня была та же проблема с Xcode 10. Я обычно использую раскадровку для каждого представления, таким образом, если кто-то помогает ему легче сложить код. Мне нужно было сделать одно из представлений на одной раскадровке начальным представлением Controller.
То, что вызывало эти ошибки для меня (я получал 8+ для некоторых из моих кокаподов), было исправлением любых проблем сборки во время выполнения во всех модулях.
Перейдите в настройки сборки своих проектов и добавьте пользовательский параметр с именем SWIFT_ENABLE_BATCH_MODE
и установите для него значение NO
.
Выйдите из симулятора и попробуйте снова. Работал для меня введите описание изображения здесь
Я столкнулся с подобной проблемой. я сделал
Legacy Build Settings
- не сработалоtypedef NS_ENUM
в файле .h и перечислите связанные работы. Создайте систему и продемонстрируйте успех. Далее откомментируй код и собери заново - Волшебно работает