Actualización rápida de xcode 8 con el error "Usar la versión de lenguaje Swift heredado"
compiler-errors swift3 (5)
Cuando abrí mi proyecto en Xcode 8, recibí el siguiente error
Use Legacy Swift Language Version” (SWIFT_VERSION) is required to be configured correctly for targets which use Swift. Use the [Edit > Convert > To Current Swift Syntax…] menu to choose a Swift version or use the Build Settings editor to configure the build setting directly
refiriéndose a una publicación similar en StackOverflow, utilice la versión heredada del lenguaje Swift SÍ / NO. ¿Pero tampoco funciona para mí al hacer SÍ o sin valor?
Por favor ayuda.
He marcado Usar versión heredada de idioma Swift en las opciones SÍ / NO, compruebe la captura de pantalla adjunta
Agregue esto a su archivo de pod:
# Uncomment this line to define a global platform for your project
platform :ios, ''9.0''
# Uncomment this line if you''re using Swift
use_frameworks!
target ''yourappname'' do
pod ''yourpodlists''
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings[''SWIFT_VERSION''] = ''2.3'' ## or ''3.0''
end
end
end
end
Ejecuta la instalación de pod nuevamente. Limpie su proyecto con cdm + alt + shift + k
. Limpiar nuevamente usando cmd + shift + k
. Reinicie Xcode. Construir. Ahora debería funcionar.
Si no está usando cocoapods, debería poder solucionar este problema configurando el atributo Versión del compilador. Use Legacy Swift Language Version
versión Use Legacy Swift Language Version
desde no especificado a Sí o No.
Configuraciones de compilación del proyecto o biblioteca ->
intente convertir el código rápido a swift3 o swift 2.3. editar -> convertir -> a veloz actual-> seleccionar veloz 3 o veloz 2.3. Esto funcionará
Como referencia a esto , esto es lo que he concluido (para Xcode 8):
- Si su código está en la versión rápida = 2.3, entonces solo necesita configurar la versión de idioma de Legacy Swift en YES en la configuración de compilación y estará listo para continuar.
Si su código está en la versión rápida <2.3 entonces:
i) convierta su código en rápido 2.3 y establezca ''Usar versión de lenguaje Swift heredado = SÍ''
O
ii) convierta su código a la última versión rápida (podría ser 3.0) y establezca ''Usar versión heredada del lenguaje Swift = NO''
En mi caso, utilicé una biblioteca externa que estaba en breves 2.2 causando errores en Xcode 8.0, así que reemplazo la misma biblioteca con la versión rápida 2.3 y utilicé la solución anterior 2.i). Ahora todo está bien.
Espero que esto ayude a alguien que está buscando la solución a este problema.