¿Cómo corregir "SWIFT_VERSION '3.0' no es compatible, las versiones compatibles son: 4.0, 4.2, 5.0" error en Xcode 10.2?

118

Estoy tratando de ejecutar la descarga desde la aplicación, intento abrir en Xcode y tengo un error:

"Mostrando mensajes recientes
: -1: SWIFT_VERSION '3.0' no es compatible, las versiones compatibles son: 4.0, 4.2, 5.0. (En el destino 'SimpleWeather')"

Captura de pantalla agregada

Vlad Uvarov
fuente
Actualiza las cosas. 3.0 es bastante antiguo en términos de velocidad de evolución Swift
vadian
2
Estoy usando Xcode 10.2 e intento abrir el antiguo 3.0, pero no puedo ejecutar el programa porque tengo errores.
Vlad Uvarov
Abra y actualice el proyecto en Xcode 10.1. Es posible tener varias versiones diferentes de Xcode en el disco.
vadian
1
versión actualizada de Xcode; (
vlad uvarov
7
¡¡¡DIOS MIO!!! Me tomé tres horas de mi tiempo para descargar XCode 10.2 solo para descubrir que ya no puedo crear mis aplicaciones. ¡No tengo copia de seguridad de XCode 10.1! Esto es una locura por la que Apple debería pagarme.
vojta

Respuestas:

99

Seleccione el destino 'SimpleWeather' en el proyecto y cambie la versión de idioma Target-> build setting -> Swift compiler language -> select 5, 4.2 etc

imagen de configuración de compilación para cambiar el lenguaje del compilador

Xeneka
fuente
76

******** La manera más fácil: **********

1.Haga clic en POD en la columna de la izquierda.

2. En la columna central, seleccione el pod que desee, luego navegue hasta "configuración de compilación" en el panel superior derecho.

3. Luego busque "Swift Language Version" y cambie a una versión conocida.

ingrese la descripción de la imagen aquí ingrese la descripción de la imagen aquí

Kingsley Mitchell
fuente
1
Gracias. Esta es la respuesta que estoy buscando.
Vinu Jacob
La captura de pantalla es de ayuda para buscar.
Namo
53

Para Xcode 10.1, seleccione su archivo Pods

ingrese la descripción de la imagen aquí

-> Vaya a Configuración de compilación -> Elija su Pod -> Busque "Swift" -> Navegue a "Versión de Swift Language" -> Configure la versión del idioma deseado.

ingrese la descripción de la imagen aquí

Deepak Chaudhary
fuente
9
Esta solución no funciona si la versión Swift es 3.xy tiene una versión de Xcode mayor que10.2
Juan P. Ortiz
12

Seguí las instrucciones de esta página y el error no se resolvió. Finalmente, entró en

$ vim MyProject.xcodeproj/project.pbxproj

y encontré dos casos en los que

SWIFT_VERSION = 3.0;

todavía estaba siendo referenciado. Los cambié a 5.0 y el error desapareció. No estoy seguro de por qué esos dos todavía estaban allí.

Para descanso
fuente
1
Solía guía de Apple para la migración de Swift 3,0 a 5,0, sin embargo, el ayudante no estaba mostrando alguna sugerencia. Tan pronto como modifiqué estas dos líneas en la respuesta anterior, me impulsó a migrar de inmediato. ¡Gracias por compartir esta solución @Forrest !
Kareem Jeiroudi
¡Increíble! Me alegro de que te haya ayudado @KareemJeiroudi
Forrest
2
Gracias, me ayudó mucho. Estuve buscando en Google media hora y descubrí esta solución ...
Dharmik
2
Esto funcionó para mí también. Haciendo una clase sobre él y el proyecto de ejemplo estaba en la versión incorrecta.
sixstring
11
  1. Seleccionar proyecto
  2. Seleccione Build SettingTab
  3. Seleccione la opción de idioma del compilador Swift

ingrese la descripción de la imagen aquí

Manoj Rawat
fuente
10

ingrese la descripción de la imagen aquíseleccione el pod como según la imagen y cambie la versión de idioma rápido, esto puede ahorrarle un día

ingrese la descripción de la imagen aquí

Govind Wadhwa
fuente
7

Parece que la aplicación podría tener un código de versión antiguo de Swift como Swift 3.0 en su caso. En el lanzamiento de Xcode, la versión 10.2 ha lanzado la versión Swift 5.0. Xcode 10.2 no es compatible con el compilador para la versión Swift 3.0. Puede cambiar el compilador de Build Settings -> Swift Compiler - Language -> Swift Language Version -> Change it to Swift 5. Si su código es compatible con la versión de ese idioma, ejecutará el código sin errores.

Sin embargo, el modo de compatibilidad Swift 3 no será compatible con el compilador Swift 5. Swift 4.2 es la última versión de Swift que admite el modo Swift 3. Hay cambios importantes tanto en la superficie del lenguaje como en el interior de su implementación en las versiones posteriores a Swift 3 que serán la base de la futura (y duradera) estabilidad binaria y de fuentes.

Consulte el enlace a continuación para obtener más detalles. https://developer.apple.com/documentation/xcode_release_notes/xcode_10_2_release_notes/swift_5_release_notes_for_xcode_10_2

Si realmente desea ejecutar la aplicación que tiene un código de versión Swift anterior, debe usar una versión anterior de Xcode. Puede usar la versión 10.1 de Xcode, su compilador tiene soporte para la versión Swift 3.0.

Otra forma alternativa es migrar su antiguo código Swift a la nueva versión de la versión Swift. Puede migrar su Swift 3.0 a Swift 4.0 en la versión Xcode 10.1.

Para obtener una guía de migración, consulte este https://swift.org/migration-guide-swift4/

Bhavin_m
fuente
5

Me encontré con este problema mientras desarrollaba un Cocoapod. Tuve un viejo.swift-version archivo en mi repositorio que especificaba Swift 3.0.

Correr pod lib lint --verboseme llevó a esta útil respuesta:

Elimine el .swift-versionarchivo que ahora está obsoleto y solo use el swift_versionatributo dentro de su podspec.

spec.swift_version = '5.0'Eliminé el archivo y lo agregué a mi archivo podspec para solucionar el problema.

Justin Vallely
fuente
5
  1. Mira esto:
    1. Haga clic en el nombre del proyecto
    2. Haga clic en destino
    3. Haga clic en Configuración de compilación
    4. En la versión de Swift Language: elija Swift 4

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

codificadores
fuente
4

Abrí el archivo MyProject.xcodeproj (usando el editor VSCode)

y encontré algunas líneas donde

SWIFT_VERSION = 3.0;

(alrededor de la línea 400 donde dice /* Begin XCBuildConfiguration section */)

Modifique a SWIFT_VERSION = 5.0 u otros. Después de eso, pude construir y ejecutar el proyecto.

Dan Alboteanu
fuente
3

Busque Swift y haga doble clic, luego cambie cada versión ofensiva.

ingrese la descripción de la imagen aquí

ScottyBlades
fuente
1

Si tiene varios archivos de pod como lo hice yo y tiene problemas para encontrar el pod con SWIFT_Version = 3.0, pruebe la barra de búsqueda

Guillermo
fuente
0

1) cambie la versión de pod en podfile (porque la biblioteca escribió una versión rápida antigua)

2) "instalación de pod" en la terminal

Erhan Demirci
fuente
0

Soy nuevo en el desarrollo de iOS. Después de seguir todas las respuestas anteriores, todavía recibí el mismo error. Estaba usando Xcode 11 y descargué la muestra " FoodTracker " del sitio web de Apple Developer y obtuve el mismo error después de intentar compilarlo. Descubrí que el proyecto tiene varias configuraciones que se refieren a la versión de idioma Swift después de VIM el contenido del archivo del proyecto. Entonces, resolví esto configurando primero "Proyecto> FoodTracker", y también "OBJETIVOS> FoodTracker" y "OBJETIVOS> FoodTrackerTests" la Versión de Swift Language en 5.0. Espero eso ayude.

Configuración de la versión de Swift Language en el proyecto y TODOS los objetivos

Jo Poon
fuente
-1
  1. abra MyProject.xcodeproj / project.pbxproj en el editor (eq Sublime)

ejemplo Calculator.xcodeproj

  1. Cambiar el nombre de todos SWIFT_VERSION = 3.0; Cambiar el nombre de todos SWIFT_VERSION = 5.0;

ingrese la descripción de la imagen aquí

Lamhot
fuente