La aplicación funciona bien en el simulador, se construye y se ejecuta.
Cuando conecto mi dispositivo (iPhone 3GS con iOS 4.3) y apunto al iPhone, el resultado es "Error de compilación" con "Sin problemas".
Al mirar la ventana de resultados de la compilación, todo es verde, tiene una marca de verificación, incluido el aviso de compilación fallida .
La ampliación de las transcripciones no muestra errores.
No puedo excluir la posibilidad de un error de firma o aprovisionamiento, pero me dio esos errores, los resolví y ahora no me da ningún error o problema, solo "Error de compilación; sin problemas"
- ¿De qué manera puede fallar la compilación sin problemas?
- ¿Hay alguna forma de ver la salida de la compilación para ver si puedo encontrar la razón por la que falla sin problemas?
- ¿Se producen resultados de construcción más allá de la lista de problemas?
- No veo en la ventana de compilación donde intenta cargar la aplicación en mi dispositivo, ¿esta salida está en otro lugar?
Respuestas:
Recibí "Error de compilación" sin errores en el navegador de problemas (solo advertencias). El navegador de informes, sin embargo, mostró errores correctamente.
fuente
¿Está utilizando "subrayado" y "espacio", etc. para el identificador de paquete?
¿Está utilizando .m en lugar de .h en una de sus importaciones? #importar "Photo.h"
fuente
Lo primero que intentaría es limpiar todo (menú Producto / Limpiar) y volver a construirlo. Puede que ya lo hayas probado.
Encontrará (y podrá verlo durante la compilación) el resultado completo de la compilación en Log Navigator. Ese es el ícono más a la derecha de los íconos pequeños justo debajo de los botones Ejecutar y Construir.
Los archivos de registro de compilación (y depuración) se encuentran en el directorio / Users / you / Library / Developer / XCode / DerviedData / YourProject-abcdefg / Logs / Build (y ../Debug respectivamente).
No creo que haya ningún resultado para la instalación de su aplicación en el dispositivo.
fuente
¿Hay un espacio en el nombre del producto de su objetivo?
Sé que en versiones anteriores de Xcode esto no fue un problema, pero parece que rompieron algo en Xcode 4 por lo que ya no funciona (sospecho que tiene algo que ver con la tontería de la ruta DerivedData). Puede agregar un espacio al nombre de su aplicación tal como aparece en el Launchpad de su iDevice configurando la
CFBundleDisplayName
tecla enInfo.plist
algo diferente a${PRODUCT_NAME}
.fuente
En una de las listas de correo de Cocoa Heads locales, me animaron a intentar un pequeño proyecto de muestra predeterminado, algo que debería haber hecho al principio para asegurarme de que mi aprovisionamiento y firma funcionaran. Se creó y se ejecutó en mi dispositivo sin problemas, por lo que todas las señales apuntan a un problema con mi código o el proyecto.
Lanzaré cosas del proyecto existente al nuevo proyecto de muestra, y si falla de una manera similar, debería poder reducir el problema a una región de interés más pequeña.
Agregué la funcionalidad principal de la aplicación en un nuevo proyecto y está funcionando bien. Lo único que hice de manera diferente esta vez fue que no configuré un binario universal (solo iPhone en este momento) y desactivé todo excepto la orientación vertical. Por lo que puedo decir, todo lo demás es igual, aunque si decido investigarlo más adelante, compararé los archivos del proyecto y veré qué más podría ser diferente.
Entonces, la solución para mí fue comenzar un nuevo proyecto y transferir toda la funcionalidad del proyecto anterior al nuevo proyecto.
Podría ser que recrear el objetivo, como sugiere Paul en otra respuesta, también lo arreglara, pero con un proyecto tan simple, reiniciar desde cero fue fácil para mí.
fuente
Tuve el mismo problema y, como alguien más sugirió, tenía que ver con el identificador del paquete. Recientemente lo había cambiado, como prueba, y le había puesto un asterisco. Lo arreglé y tuve que limpiar el objetivo, y luego funcionó.
fuente
Esto me sucedió después de eliminar un objetivo no utilizado. Parece que Xcode puso un espacio en el CFBundleIdentifier de mi objetivo restante (com.company.etc). Tuve que editar Info.plist con un editor de texto externo para eliminarlo y luego funcionó bien.
fuente
Estaba jugando con la adición de varios proyectos dentro de un espacio de trabajo y tuve este problema. Tengo una biblioteca simple en uno de los proyectos y estaba construyendo y agregué un objetivo basado en una ventana de iOS para probarlo. Eliminé el primer objetivo que hice para cambiarle el nombre. Después de leer esto, intenté eliminar xcuserdata del interior del paquete .xcodeproj y eso solucionó mi problema. Espero que esto ayude a alguien más. Ejecutando Xcode 4.1 en OS X 10.7.1.
fuente
Después de revisar todas estas respuestas, tuve exactamente el mismo problema, pero algo diferente me lo resolvió.
El problema:
La compilación falló sin problemas después de la refactorización. (Cambiar el nombre de una clase usando Editar -> Refactorizar -> Cambiar nombre).
La solución más tonta de todos los tiempos:
Vaya a refactorizar (renombrar) otra cosa (-_- "). Después de hacer eso, el error fue que Xcode no pudo cambiar el nombre de todos los archivos apropiados y no mostró errores. Luego, después de otra refactorización, aparecieron los errores de la refactorización anterior .
fuente
Yo tuve el mísmo problema. Estaba tratando de arreglarlo, un xcode falló. Lo volví a abrir y funcionó bien. ¿Quizás tuve suerte o algo así? Sea lo que sea, no me importa lo que estaba mal mientras funcione ahora
fuente
Si cambió el identificador del paquete y limpió el proyecto, pero tampoco funcionó, intente vaciar el directorio / Users / YOUR_USERNAME / Library / Developer / Xcode / DerivedData.
Esto funciona para mi.
fuente
Para mí, la compilación falló sin mostrar ningún error en el Navegador de problemas. Sin embargo, en Log Navigator, en esa sesión de compilación, pude ver el error. En mi caso, el error fue una constante no declarada. Importé el archivo de encabezado requerido y el problema se resolvió. No estoy seguro de por qué este error no apareció en el Navegador de problemas.
Intenté reproducir este comportamiento cambiando deliberadamente el nombre de otra variable. Esta vez, el error se mostró en Issue Navigator. Por lo tanto, todavía no estoy seguro de por qué no aparece el error anterior en el Navegador de problemas.
Espero que esto ayude.
fuente
Las soluciones anteriores no me funcionan.
Mi solución es mover el proyecto a otra carpeta.
Los errores de compilación luego aparecen como lo hacía normalmente.
fuente
¿Ha limpiado su carpeta de construcción? Vaya al menú Producto, mantenga presionada la tecla Opción y seleccione "Limpiar carpeta de compilación ..."
fuente
Sé cuál es el problema: En Info.plist -> Bundle Identifier: no puede usar '_'. Por ejemplo, com.mycompany.My_app no es válido, pero com.mycompany.My-app está bien.
fuente
Tuve exactamente el mismo problema al intentar compilar un proyecto existente en xcode 4, y casi sufrí la molestia de volver a crear el proyecto.
Sin embargo, en un último intento, reemplacé el archivo info.plist por uno recién creado que incluía las etiquetas adicionales para "tipos de documentos", "tipos de url", "UTI de tipo exportado" y "UTI de tipo importado"
Esto pareció funcionar y fue una solución sorprendentemente simple para mi proyecto.
fuente
Esto me sucedió con mi objetivo UnitTest. Estaba trabajando y luego se detuvo. Había olvidado que acababa de eliminar un .h / .m en el sistema de archivos y no lo eliminé del archivo del proyecto, sin embargo, XCode no lo informó.
Lo descubrí ejecutando el proyecto en la línea de comando, que me dijo el error:
Ejecute esto en la carpeta en la que tiene su archivo de proyecto y reemplace UnitTest con su objetivo, o simplemente no pase un objetivo para construir el objetivo predeterminado.
fuente
Yo también tuve este problema, pero la causa fue diferente:
Tengo un espacio de trabajo con un proyecto. En este proyecto, uso un marco que se incluye agregando su proyecto Xcode a mi proyecto. Importé el archivo de encabezado del marco en mi encabezado de prefijo (.pch). Esto fue una estupidez.
La solución fue eliminar el #import del archivo de encabezado del marco de mi archivo de encabezado de prefijo y agregarlo solo donde sea necesario.
fuente
El mismo problema aquí cuando se construye para el dispositivo. La compilación falló, pero mi registro tiene marcas de verificación verdes. Limpiar / eliminar la carpeta de compilación no lo soluciona. Leí en otra parte que alguien resolvió este problema eliminando y recreando el objetivo, pero aún no he descubierto completamente cómo hacerlo en XCode 4.
Mi solución temporal ha sido descargar e instalar XCode 3.2.6 con iOS 4.3. No me di cuenta de que Apple también había lanzado una versión de XCode 3 que incluye iOS 4.3, lo que le permite posponer la actualización a XCode 4. Presenté un informe de error con Apple sobre el problema de Build Failed.
udpate de Apple:
Cambié de un guión bajo a un guión y solucionó el problema.
fuente
Me acaba de pasar lo mismo con una causa diferente.
Eliminé get-task-allow de mi archivo Entitlements.plist, dejando un plist vacío. La configuración de compilación todavía tenía el archivo Entitlements.plist especificado como mi archivo de derechos. Elegí ejecutar usando mi configuración de compilación Ad-Hoc en un dispositivo iOS con mi iPhone conectado, y vi el comportamiento descrito en este error. Agregar get-task-allow back lo solucionó.
fuente
Parece que hay muchas causas posibles de este problema. El mío resultó ser eso
Mi objetivo estaba configurado para usar un perfil de aprovisionamiento inexistente.
Configuré mi proyecto para usar un nuevo perfil y eliminé el anterior. No me di cuenta de que el objetivo tenía su propia configuración de perfil de aprovisionamiento, que todavía estaba configurada en el perfil antiguo (ahora eliminado).
fuente
Solo para agregar otra respuesta después de probar TODO lo anterior sin éxito: tuve que reiniciar la MacBook, no solo cerrar XCode, y eso funcionó para mí. Terminó con XCode mostrando algunos errores en Localizable.strings que no mostraba antes.
Espero que ayude
fuente
Borro todos los espacios en los esquemas del proyecto en xcschemes y esto resuelve este problema. F *** ing Apple :( AppCode ROCKS!
fuente
ver: http://developer.apple.com/library/ios/#DOCUMENTATION/FileManagement/Conceptual/understanding_utis/understand_utis_conc/understand_utis_conc.html
fuente
No tuve ningún problema con el nombre del paquete, por lo que las soluciones sugeridas no funcionaron para mí. Finalmente, configuré No firmar código para la compilación, luego cerré el proyecto, luego eliminé el aprovisionamiento en el organizador, luego descargué un nuevo aprovisionamiento y lo agregué al organizador, luego lo configuré para la compilación. Funcionó.
fuente
Esta no es una respuesta técnica, sino una respuesta de "error de usuario" que probablemente no se aplica a su situación. Me pasó a mí y mi búsqueda me llevó a estas preguntas y respuestas en vano, hasta que me di cuenta de mi error. Tenía un filtro configurado en el Navegador de problemas que no coincidía con nada de lo que se informaba como un problema. Cuando borré el filtro, se mostraron los problemas.
Observe que los síntomas eran los mismos sobre los que estaba preguntando y no tengo idea de cuándo configuré ese filtro (debe ser heredado de las otras vistas de navegación) ya que no habría necesitado ningún filtrado en la lista corta.
fuente
Acabo de tener un problema similar. No se pudo encontrar un error en ninguna parte. Eliminé todos mis perfiles de aprovisionamiento y agregué otros nuevos.
Luego intenté crear otra aplicación de prueba en mi dispositivo y recibí este mensaje de error:
Error de firma de código: la identidad del certificado 'Desarrollador de iPhone: xxxxxx' aparece más de una vez en el llavero. La herramienta de codeign requiere que solo haya una.
Así que entré en Keychain, encontré un par de certificados vencidos con el mismo nombre y los eliminé, y eso funcionó.
Bastante aleatorio, pero tal vez si intentas crear otra aplicación para el dispositivo como lo hice yo, es posible que tengas la suerte de recibir un mensaje de error, como yo, para ayudar a diagnosticar el problema.
fuente
Vaya a Organizador en xcode. Y en la pestaña Proyecto, elimine ese proyecto. Deje que xcode reconstruya los datos derivados nuevamente y solucione mi problema.
fuente
Enfrenté un problema similar en XCode4.5 y mientras trabajaba en mi aplicación, XCode se bloqueó repentinamente.
Después de buscar durante horas, descubrí que uno de mis archivos en mi aplicación se eliminó cuando xcode falló.
Restauré el archivo de la Papelera y el problema se resolvió.
fuente
Estaba programando una aplicación de Mac OS X sin firma de código . Cuando habilité la zona de pruebas en la sección "Derechos", la firma de código se activó automáticamente y no pude crear una nueva compilación.
fuente