Recibo 4 errores para JSON con formato incorrecto y un comando compileSwift falló con un error de código de salida distinto de cero.
No tengo ni idea de cómo depurar esto, ya que no muestra en qué archivo está ocurriendo.
Intenté eliminar el espacio de trabajo y el directorio de pods y hacer una nueva instalación de pod y actualización de pod.
He intentado eliminar los datos derivados.
Tampoco han trabajado.
Recibí el mismo error y después de leer los comentarios anteriores revisé mi código y vi este "return 93à". Entonces, después de eliminar este "à", ahora funciona bien.
Así que aquí está mi historia sobre exactamente el mismo problema pero con una causa y una resolución totalmente diferentes.
TL; DR: decodifique esa matriz problemática como una cadena y léala, ese es su problema real, no el que tiene JSON.
Y aquí está mi historia completa...
Lo primero es lo primero... Llegué a este error al mover los archivos de mi aplicación a un proyecto de marco y cambiar su objetivo.
Intenté todo lo que sugirieron, pero sin suerte, solo me tomó un tiempo descubrir cómo informar esos archivos de forma recursiva. Si alguien quiere verificar su codificación en todo el proyecto, aquí se explica cómo hacerlo:
find . -type f -name "*.swift" -exec file {} +
Todos mis archivos informaron ASCII y UTF-8, incluso eliminé todos los caracteres Unicode para convertirlos en ASCII, y aún así no ayudó.
De todos modos, totalmente desesperado, me decidí por el último intento... tratando de decodificar lo que fuera que había en esa secuencia de bytes indescifrable.
Abrí la consola de mi navegador e hice esto:
String.fromCharCode(...[123, 10, 32, 32, 34, <the rest of the error array from XCode>])
Y me salvó el día, regalando la información real del problema.
Lo que obtuve fue el mensaje de error real que, por alguna razón (aún desconocida para mí), el compilador no pudo procesar.
Aquí hay un breve extracto del cual también puede ver por qué todas las personas ven la misma secuencia al principio:
{ "kind": "finished", "name": "compile", "pid": 27181, "output": ... ... /RecognizedSymbolBlock.swift:5:15: error: use of undeclared type 'CGRect'\n let rect: CGRect;\n ... ... /RecognizedTextBlock.swift:3:7: error: type 'RecognizedTextBlock' does not conform to protocol 'Decodable'\nclass RecognizedTextBlock ...
Entonces resultó que mi problema era no tener el marco CoreGraphics
incluido en el objetivo, además de no tenerlo agregado con la import CoreGraphics
en el archivo mismo.
Por extraño que parezca, cuando miré ese archivo en XCode (que no hice antes, ya que todo era solo mover un código que funcionaba antes), de repente vi todos estos errores claramente.
Mi último hallazgo extraño fue después de preguntarme... "¿Por qué diablos funcionó en el objetivo original sin import CoreGraphics
?"
Resultó que tener esto en el archivo de encabezado de puente trajo automáticamente marcos vinculados como si se hubieran importado en todos mis archivos (es uno de los marcos vinculados que uso que está usando UIKit):
#import <TesseractOCR/TesseractOCR.h>
Pero puede ser cualquier cosa, realmente, como:
#import <UIKit/UIKit.h>
El punto es que si está utilizando el archivo de encabezado de puente, puede ocultar fácilmente el hecho de que no está obligado a escribir código coherente con todas las importaciones necesarias.
De todos modos, mi objetivo principal es que todos sepan que su problema original probablemente sea algo totalmente diferente y que el problema original en realidad está codificado en esa matriz de bytes de error que todos están recibiendo. Incluso si enfrenta problemas de codificación, esta matriz de bytes puede indicarle qué está mal con su código.
¡Feliz arreglo!
En el panel del navegador, la pestaña de informes (la última) es su opción para estas situaciones. Puede ver registros detallados de acciones de compilación y puede realizar un seguimiento desde allí.