Xcode 9 Swift Language Version (версия SWIFT)



Я недавно обновил xcode до версии 9. До этого в Xcode 8.х всякий раз, когда я использую, чтобы сделать pod update Он показывает мне код обновления для преобразования кода в Swift 3 и делают, что решают ошибки. Но теперь он дает мне эту ошибку:




необходимо установить параметр сборки "Swift Language Version" (SWIFT_VERSION
к поддерживаемому значению для целей, которые используют Swift. Эта настройка может быть
установите в Редакторе параметров сборки.




для этой ошибки я пробовал Build Settings > Swift Language Version и это был Swift 3.2
Но поскольку вызов обновления переустановил некоторые из стручков, таких как Alamofire, и он говорит об установке Xcode 8.x чтобы преобразовать код в Swift 3, мне нужно установить дополнительную версию с последним Xcode? Если да, то как я могу установить Xcode 8 с Xcode 9?

675   4  

4 ответов:

ответ на ваш вопрос:
вы можете скачать Xcode 8.х от Apple Скачать Портал или Скачать Xcode 8.3.3 (или видим: Где скачать старую версию Xcode), если у вас есть премиум аккаунт разработчика (apple id). Вы можете установить и работать как с Xcode 9, так и с Xcode 8.x в одной системе (mac). (Убедитесь, что вы Command Line Tools поддержка обеих версий Xcode, для работы с терминалом (см.:Как установить ' Командная строка Инструмент'))

предложение: как перенести ваш код Xcode 9 совместимые версии Swift (Swift 3.2 или 4)
Xcode 9 позволяет преобразование / миграцию из Swift 3.0 to Swift 3.2/4.0 только. Поэтому, если текущая версия языка Swift вашего проекта ниже 3.0, вы должны перенести свой код в совместимую версию Swift 3 с помощью Xcode 8.x.

Это распространенное сообщение об ошибке, которое показывает Xcode 9, если он идентифицирует язык Swift ниже 3.0, во время миграция.

enter image description here


Swift 3.2 поддерживается Xcode 9 и Xcode 8.

проект ► (выберите цель проекта) ► настройки сборки ► (введите "swift" в строке поиска) язык компилятора Swift ► версия языка Swift ► нажмите на список языков, чтобы открыть его.

enter image description here



преобразование исходного кода из Swift 2.0 в 3.2 с помощью Xcode 8, а затем продолжить Xcode 9 (Swift 3.2 или 4).

для упрощения миграции кода выполните следующие действия: (это поможет вам конвертировать в последнюю версию swift, поддерживаемую вашим инструментом Xcode)

Xcode: Меню: Edit ▶ Covert ▶ To Current Swift Syntax

enter image description here

для проектов Objective C, созданных с использованием Xcode 8 и теперь открывающихся в Xcode 9, он показывает ту же ошибку, что и упомянутый в вопросе.

чтобы исправить это, Нажмите кнопку + в настройках сборки и выберите добавить пользовательские настройки, как показано на рисунке ниже

build setting

затем в новой созданной строке Добавить SWIFT_VERSION как ключ и 3.2 как значение, как показано ниже.

enter image description here

он исправит ошибка для проектов objective C.

Я просто нажимаю на последнюю кнопку SWIFT convert и устанавливаю настройку целевой сборки приложения - > версия языка Swift: swift 4.0,

надеюсь, что это поможет.

в моем случае все предупреждения исчезли после того, как я непосредственно изменил версию swift с 2.x до 4.0 в настройках сборки, за исключением двух предупреждений.

эти предупреждения связаны с myprojectnameTests и myprojectnameUITests папка. Я не заметил, и я думал, что это связано с прямой иммиграцией из Xcode 7 в Xcode 9, и я думал, что не могу решить эту проблему, и я должен установить пропущенную версию Xcode 8.

в моем случае я удалил эти папки и все предупреждения исчезли, но вы можете воссоздать эту папку и содержит с помощью этого:

file > new > target > (uitest or unittest extensions)

и использовать эту статью для создания тестов : https://developer.apple.com/library/content/documentation/DeveloperTools/Conceptual/testing_with_xcode/chapters/04-writing_tests.html

Comments

    Ничего не найдено.