Tal vez sea solo yo experimentando una "característica" tan molesta:
Después de actualizar de Xcode 6.0.1 a Xcode 6.1, las cosas cambiaron. Xcode 6.1 está siempre indexando el proyecto o compilando archivos fuente. El proyecto no es enorme. Solo contiene un montón de archivos Swift y AWS SDK 2.0 Cocoapods en el espacio de trabajo. No creo que deba evitar que todo se indexe y se compile sin problemas. Probé con algunos ejemplos de aws-sdk-ios, solo para ver cómo funciona Xcode 6.1 en ellos, y terminó en lo mismo esperando para siempre.
Qué soluciones he probado hasta ahora:
- Eliminar "Datos derivados" en el Organizador y volver a abrir el espacio de trabajo. (no arreglar)
- "Mostrar contenido del paquete" en el archivo .xcodeproj y eliminar .xcworkspace como en ( Xcode 4 - rendimiento lento )
Ninguno de ellos funcionó, lamentablemente.
PD: ¿quizás debería intentar volver a crear el proyecto? Configuración de mi computadora: MacBook Pro (Retina, 13 pulgadas, mediados de 2014), memoria DDR3 de 8 GB a 1600 MHz, con Yosemite. (Creo que esto es suficiente para ejecutar este pequeño proyecto).
Respuestas:
Probé muchas de las sugerencias anteriores, incluida la división de archivos, la instalación de Xcode 6.2 beta y la ruptura de las declaraciones de concatenación de cadenas. Lo que finalmente hizo por mí fue dividir una serie de declaraciones literales de diccionarios que estaba usando para los datos de prueba en varias
.append
declaraciones.Además, por lo que vale, la sexta entrada en esta matriz es la que me causa el problema; cinco funciona bien.
fuente
init()
paso a paso funciona perfectamente. Vale la pena mencionar que también tuve que eliminar el.xcworkspace
archivo.La única solución de trabajo para mí es eliminar todos los datos derivados (no solo para el proyecto actual, simplemente limpiar toda la carpeta) y luego reiniciar Xcode.
Abrir archivo / preferencias en Xcode
Haga clic en Ubicaciones en el extremo derecho de la ventana emergente
Haga clic en el ícono de flecha pequeña al lado de "/Users/Mac/Library/Developer/Xcode/DerivedData", lo lleva a una carpeta Xcode que contiene una carpeta DerivedData (que contiene todos los datos derivados de sus proyectos anteriores .)
BORRAR la carpeta DerivedData
fuente
¿Estás usando CocoaPods? Me encontré con el mismo problema hoy. (Usando xCode 6.1.1)
Para solucionar el problema, eliminé todo
~/Library/Developer/Xcode/DerivedData
, laPods
carpeta en el directorio de mi proyecto y<project>.xcworkspace
.Luego abrí la terminal, navegué hasta el directorio de mi proyecto y volví a ejecutar
pod install
.fuente
Tuve el mismo problema hoy. Xcode 6.3.2, proyecto Swift de tamaño mediano. En un momento, comenzó a indexar y nunca terminaría de indexar. El código que provocó esto fue un diccionario de tipo [String: [String]], por lo que un diccionario de clave de cadena con matrices de cadenas como valores. Tenía dos de estos con claves de la A a la Z y cada una de estas 26 entradas contiene una matriz de cadenas con 5 a 10 cadenas.
Borrar los datos derivados no ayudó. Solo comentar esos dictados hizo que volviera a funcionar.
Honestamente, ¡esto es ridículo! ¡Apple necesita arreglar Xcode! Ya es terriblemente lento compilar proyectos Swift, pero errores como este son sorprendentes. ¡No puedo hacer mi trabajo correctamente con esto!
fuente
Para aquellos que todavía tienen este problema, esta es una solución alternativa que he disfrutado y que evita que tengan que ingresar los objetos uno por uno:
fuente
Para mí, probé todo lo anterior sin éxito; ¡pero todo lo que tenía que hacer era eliminar la carpeta de datos derivados, luego abrir otro proyecto aleatorio, esperar a que se indexara y ahora mi proyecto original (que funciona mal) funciona!
Hazle un favor al mundo del desarrollo y haz que tus rápidos compiladores sean de código abierto, para que no todos nos veamos frustrados por tu incompetencia.
fuente
Estoy usando Xcode versión 7.3 (7D175)
Creo que podría haber descubierto un problema subyacente. Allí donde dos casos en los que me quedé atascado en la fase de indexación:
Creé un cierre que asigné a una variable y omití la firma tipográfica. Creo que xcode tuvo problemas con ese paso de inferencia de tipo. Si mal no recuerdo, uno de los argumentos era un CGPoint, que tiene un constructor sobrecargado. Mi hipótesis es que hay demasiadas posibilidades de lo que mi cierre podría aceptar como argumentos.
Refactoré un método de fábrica de modo que en lugar de devolver instancias de un tipo, podría devolver instancias de muchos tipos con una clase base común. Parece que siempre que utilicé el método de fábrica, tuve que convertir el objeto resultante en un tipo específico (ya sea con as? O asignándolo a una variable que acepte un tipo específico). Nuevamente, el paso de inferencia de tipo parece estar roto.
Parece que está sucediendo lo mismo con las declaraciones del diccionario mencionadas por personas anteriores. Presenté un informe de error con Apple.
fuente
Experimenté este mismo problema después de actualizar a 6.1. Xcode se atasca compilando o indexando sin generar un mensaje de error específico.
El problema finalmente se resolvió dividiendo algunas de las expresiones más largas en los archivos rápidos en varias expresiones más cortas. Parte de mi programa combina muchas variables de cadena diferentes para formar una cadena más larga. Los intentos de combinarlos en una sola expresión y el uso del operador de asignación de suma fallaron. Pude hacerlo funcionar haciendo algo similar a lo siguiente (simplificado):
Se me ocurrió esta idea al recibir el siguiente error muchas veces en la versión anterior de Xcode "La expresión era demasiado compleja para resolverse en un tiempo razonable; considere dividir la expresión en distintas sub-expresiones".
Espero que esto ayude
fuente
He luchado con el mismo problema. Probé las dos soluciones mencionadas (eliminar datos derivados y eliminar .xcworkspace) sin éxito. También intenté comentar lentamente la mayor parte del código poco a poco y eliminar los archivos hasta que no quedaba casi nada y la indexación seguía bloqueada.
Encontré una solución que funcionó para mí, abrí el proyecto con una versión anterior de Xcode 6.1 (6A1030) que no tenía problemas para indexar y luego volví a la última versión de Xcode 6.1 (6A1052d) que estaba usando antes y la indexación fue fijo y siguió funcionando bien.
Mi conclusión es que se trata de un error con la versión 6.1 de Xcode (6A1052d) que espero mejore con futuras versiones.
El problema vuelve de vez en cuando, la misma solución funciona cada vez. Supongo que otra solución sería simplemente seguir con la versión anterior de Xcode 6.1 (6A1030), pero no funcionará con dispositivos que ejecuten iOS 8.1 y no tendrá las últimas correcciones de errores.
fuente
He intentado esto con Xcode 8.3.3. Aquí están mis resultados:
Puede escribir un código Swift perfectamente correcto que hará que la indexación se bloquee.
Una vez que la indexación se cuelga, se cuelga. Cambiar el código Swift de nuevo a algo que no provoque que la indexación se cuelgue no ayuda, todavía se cuelga.
Cerrar el proyecto y reabrir no ayuda en esa situación.
Salir de Xcode y reiniciarlo ayuda. La indexación ya no se bloqueará (es decir, si cambia el código de nuevo a algo que no hace que se bloquee).
Reiniciar tu Mac también ayuda, aunque no es necesario.
El bloqueo se debe a un código Swift perfectamente correcto. Un ejemplo que me había parecido
La indexación se colgaría. Comenté la mayoría de los "??" líneas y estuvo bien (después de salir y relanzar Xcode). Sin comentar una línea tras otra. Con algunas líneas estaba bien, luego descomentar la siguiente línea lo haría colgar.
Lo único que ayuda aparentemente es cambiar tu código.
fuente
En mi Xcode, la solución fue cerrar todas las ventanas redundantes. Por alguna razón, muchas ventanas abiertas hacen que Xcode sea muy lento.
fuente
Finalmente, "resolví" el problema, aunque es solo una solución.
Creé otro proyecto y le agregué archivos uno por uno. Luego vi un archivo viewcontroller.swift "muy largo". Luego rompí sus códigos en módulos y convertí esos códigos usados repetidamente en funciones en otro archivo rápido. Y también, tomé la sugerencia en línea de que las expresiones largas deberían dividirse en otras más cortas. Entonces, la indexación funciona y la compilación funciona.
Entonces, por ahora, lo tengo "resuelto".
PERO, no creo que esto sea correcto. Xcode IDE debería ser más que capaz de manejar mi archivo rápido "muy largo", sólo 1500 líneas. Creo que esto es definitivamente un error (que existe desde hace mucho tiempo), aunque Xcode 6.1 ya es una actualización de Xcode 6.0.1.
fuente
Para mí, eliminé la aplicación Xcode, la descargué nuevamente y la instalé. Eso resolvió el problema, al menos ahora.
fuente
Xcode indexación generalmente para su código para sugerencias y autocompletar, entre otras cosas, como ayudarlo en los tableros de historias y viceversa. Pero para acelerar su proyecto de xcode, puede apagarlo / encenderlo a través de la terminal
Desactive los
valores predeterminados de indexación escriba com.apple.dt.XCode IDEIndexDisable 1 Active los valores predeterminados de indexación escriba com.apple.dt.XCode IDEIndexDisable 0
Pero es mejor utilizar un mac rápido con buena RAM.
fuente
Si no le importa volver a 6.0.1 hasta que lo descubran, eso es lo que funcionó para mí. Tenía el mismo problema con 6.1 y 6.1.1. Ahora estoy bien. Intentaré 6.2 cuando salga.
Puede encontrar versiones anteriores del software de Apple en su sitio de desarrollo oficial, aquí: https://developer.apple.com/downloads/index.action
Si hace esto, asegúrese de eliminar primero su copia actual de Xcode.
fuente
Estoy usando Xcode 6.1.1 con archivos rápidos en la misma MacBook Pro.
Mientras seguía agregando filas en una matriz de cadenas 3D, Xcode de repente se volvió inutilizable y ahora no puedo hacer nada.
Intentará volver a la versión 6.1 y es de esperar que el problema desaparezca.
fuente
Veo esto en Xcode 6.3.2. Realmente esperaba que un año después del lanzamiento, tuvieran el compilador funcionando, pero por desgracia.
Si ninguna de las soluciones anteriores funciona, intente verificar su código en busca de errores sintácticos. En el proceso de refactorización, extraje un cierre pero olvidé calificar los parámetros:
Si he aprendido algo de trabajar en Swift, es trabajar de forma incremental, para evitar tener que retroceder demasiado para encontrar el código ofensivo.
fuente
fuente
Yo uso Xcode 8.2 y también terminé en este problema. Comenzó después de que definí una variable de tupla compleja: una matriz de tupla con una submatriz de tupla. Las cosas se ponen muy lentas cuando el subarreglo de tupla tiene una propiedad que se calcula mediante programación.
Como se señaló en otras respuestas, la indexación lleva una eternidad y creo que está tratando de inferir los tipos de la variable.
Primero resolví el problema definiendo claramente la variable con tipos incluidos. Al actualizar la propiedad, primero la calculo y luego la asigno a la tupla, en lugar de calcular al definir la variable.
Aquí hay un código de ejemplo.
La conclusión es que no permita que Xcode infiera estructuras complejas.
fuente
Yo estaba teniendo el mismo problema. Mi Xcode es 8.2.1. Pero en mi caso, quería crear una matriz de diccionario con 33 pares clave-valor. Lo estaba haciendo de la siguiente manera que estaba atascado en la indexación:
Lo siguiente funcionó para mí:
fuente
También tuve este problema y lo resolví eliminando / cambiando expresiones con el operador "+".
Cambié esto:
A esto:
Resolvió el problema.
Mi máquina tiene un MBP al máximo a finales de 2013
fuente
Es posible que desee actualizar a Xcode 6.1.1
Se ha lanzado oficialmente y nos ha resuelto el problema de indexación. En la descripción de la actualización, dice que han aplicado correcciones de estabilidad por lo que es muy probable que se comporte de una manera más estable.
fuente
La beta de Xcode 6.2 me resolvió el problema. No a la velocidad del rayo, pero al menos no se indexa para siempre. La versión beta no se instala por encima de su instalación habitual de Xcode, por lo que si no le gusta la versión beta, puede eliminarla.
Varias descargas de Xcode, incluida la beta>
fuente
Tenía expresiones como:
además
Entonces, el punto es reescribir su archivo para que contenga solo expresiones de nivel de jardín de infantes y el problema de indexación desaparecerá.
fuente
Xcode 11.5 (11E608c) y siguen teniendo los mismos problemas, 6 años después de la pregunta original. Ojalá pudiera "marcar" la manzana en esta pregunta para que puedan ver este lío. Este es un proyecto grande (> 1000 archivos) y estaba por debajo del reloj, así que cuando noté que el índice de congelación estaba con más de 100 archivos cambiados y no puedo volver atrás.
Lo he probado todo:
El problema fue la creación de una matriz:
Lo que me ayudó a descubrir el archivo swift incorrecto fue cuando xcode inmovilizó la indexación hice los siguientes pasos
SOURCEKIT_LOGGING=3 /Applications/Xcode.app/Contents/MacOS/Xcode &> ~/Documents/xcode.log
que iniciará Xcode con nivel 3 detallado y comenzará a iniciar sesión en el archivo de registro.No es una solución completa, pero es útil profundizar y saber dónde buscar.
fuente