ios - pods - Errores después de actualizar a Xcode 8: “No existe tal módulo” y “el objetivo anula la configuración de construcción` EMBEDDED_CONTENT_CONTAINS_SWIFT` ”
pod alamofire swift 4 (5)
No obtengo
No such module
para Pods cuando intento construir el proyecto.
Si elimino el código que espera este Pod, aparece otro ''No hay tal módulo'' para otro Pod, lo que significa que cada Pod debe verse afectado.
Cuando escribo
pod install
recibo los siguientes mensajes:
[!] The X target overrides the `EMBEDDED_CONTENT_CONTAINS_SWIFT` build setting defined in `X’. This can lead to problems with the CocoaPods installation
- Use the `$(inherited)` flag, or
- Remove the build settings from the target.
[!] The `X` target overrides the `ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES` build setting defined in `X''. This can lead to problems with the CocoaPods installation
- Use the `$(inherited)` flag, or
- Remove the build settings from the target.
Recibo cada uno de estos para las versiones de depuración y lanzamiento de mi aplicación y las dos pruebas, por lo que 12 mensajes en total.
Establecí las
Always Embed Swift Standard Libraries
y
EMBEDDED_CONTENT_CONTAINS_SWIFT
en
NO
y
YES
tanto en mi Configuración de compilación como para hacer nada.
También agregué el siguiente código a mi Podfile y tampoco funcionó:
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings[''ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES''] = ''NO''
end
end
end
Esto es lo que trabajé para mí:
pod deintegrate || rm -rf Pods
pod install --verbose
rm -rf ~/Library/Developer/Xcode/DerivedData
Luego simplemente limpio mi proyecto y lo construyo de nuevo.
Los errores que ve cuando ejecuta la
pod install
no deberían causar los errores
No such module
.
Entonces, supongo que estos errores no están relacionados.
Para deshacerse de los errores de
pod install
:
Esto sucede porque define un indicador en su configuración de compilación que anula el establecido por CocoaPods.
No importa si lo configura en
YES
o
NO
, aún sobrescribirá la configuración de CocoaPods.
Para arreglar esto:
- Vaya a Proyecto / Objetivos -> [Nombre del proyecto] -> Configuración de compilación.
- Busque y haga clic en la configuración relevante (puede usar el cuadro de búsqueda en la esquina superior derecha).
-
Presione
Backspace
para eliminar la configuración.
Debería ver que la configuración va de negrita a fuente normal. Esto significa que la configuración se ha eliminado y está utilizando un valor predeterminado.
Repita para cada indicador que le da un error, y vuelva a ejecutar la
pod install
para verificar que funcionó.
Razones para que
No such module
errores de
No such module
:
Hay varias formas en que puede ocurrir este error. ¿Has mirado estas respuestas para ver si alguna se aplica a tu caso? Si informa sobre eso, será más fácil ayudarlo.
cuando importo SDWebImage en mi proyecto por segunda vez, usé ese módulo FLAnimatedImage no encontrado, y cuando puedo instalar, advierte "... SIEMPRE_EMBED_SWIFT_STANDARD_LIBRARIES ... - Use el indicador
$(inherited)
o - Elimine la configuración de compilación de el objetivo."
Por fin, encuentro la forma de eliminar la SD por completo, especialmente en el buscador, en los productos de los pods, y eliminar el proyecto en el simulador, luego importar SD nuevamente.
(Actualizado a partir del 29 de julio de 2018)
- Proyectos / Objetivos -> Nombre del proyecto -> Configuración de compilación
- Opciones de compilación
- Haga clic en Insertar siempre bibliotecas estándar de Swift para que quede resaltado
- Presione el botón Eliminar en su teclado
Las bibliotecas estándar de Insertar siempre rápidas ya no deberían aparecer en negrita , y ya no recibirá esta advertencia cuando realice actualizaciones de pod o instalaciones de pod =)
[!] The `X` target overrides the `ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES` build setting defined in `X''. This can lead to problems with the CocoaPods installation
- Use the `$(inherited)` flag, or
- Remove the build settings from the target.
Encontré este problema hoy. Lo resolví por
- Vaya a Proyecto / Objetivos -> [Nombre del proyecto] -> Configuración de compilación.
- buscar "ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES"
- haga clic a la derecha de Depurar, y seleccione ''Otro'', ingrese "$ (heredado)"
- haz lo mismo con ''Release'' e instala tu pod
Puedes seguir la imagen de abajo.