Xcode / Swift 'nombre de file utilizado dos veces' error de compilation

Soy nuevo en Swift y estoy luchando con un error después de que (posiblemente) haya instalado correctamente un marco de terceros a través de CocoaPods.

El error es el siguiente.

<unknown>:0: error: filename "MainController.swift" used twice: '/Users/myname/Desktop/ProjectName/ProjectName/Controllers/MainController.swift' and '/Users/myname/Desktop/ProjectName/ProjectName/Controllers/MainController.swift' <unknown>:0: note: filenames are used to distinguish private declarations with the same name Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc failed with exit code 1 

Por lo que puedo recostackr de otros foros y aparentemente obvio es que tengo que eliminar uno de los files que se utilizan dos veces. Sin embargo, no puedo ver dónde se instalarán dos veces. Si elimino el file de la carpeta / Controladores, el error se convertirá en "file no encontrado", etc.

Entonces, mi pregunta es: ¿dónde se ubicarían estos files en conflicto y cómo puedo eliminar uno de ellos de manera segura? ¿O es más que solo hay un file pero se usa dos veces? ¿En qué caso cómo lo detuve?

Muchas gracias.


Ok, siento que los comentarios se están perdiendo, así que estoy aclarando aquí para ver si puede desencadenar una respuesta ya que no pude build y ejecutar esto desde ayer.

Ahora solo tengo los files rápidos en la carpeta Pods-> Pods / MainController.

Cuando compilo obtengo un file que no se encuentra. Sin embargo, el file que está buscando está en la carpeta App-> Controllers, que es donde lo eliminé. Si pongo el file allí obtengo el error "usado dos veces".

Entonces, ¿cómo lo detuve intentando encontrar el file en los Controladores y searchlo en los Pods?

Gracias

Intente search si ha agregado el mismo ViewController – MainController.swift dos veces.

Si no es así, busque el class MainController en la base de código.

Con respecto a las vainas, se prefiere usar todas las vainas como frameworks,

¡Intenta usar 'use_frameworks!' en su Podfile , y luego desde el terminal Podfile a instalar el pods " pod install ".

Compruebe que el file no se incluye dos veces en las configuraciones de "Generar fases" de "Fuentes de compilation" del objective. Puede suceder cuando fusionas project.pbxproj.

Si se trata de información relacionada con el núcleo y no estás teniendo Xcode generando las entidades para ti en el momento de compilation (las creaste manualmente tú mismo), y estás experimentando este problema, es probable que no hayas revisado la actualización de la entidad en .xcdatamodelld file. Lo que sucede es que Xcode creará una class duplicada de su class existente, ya que le dijo a Xcode que generara la entidad en time de ejecución.

En el inspector del model de datos, cambie el "Módulo" por el "Módulo del producto actual" y "Codegen" por "Manual / Ninguno".
introduzca la descripción de la imagen aquí

La idea principal es … sí, busque classs duplicadas. Pero en mi caso no tenía ninguno. Tuve un gran proyecto, añadí WatchKit, muchas cosas y en algún momento tuve una class "duplicada". Eliminé el duplicado pero el problema permaneció. Para solucionarlo hice esto:

  • En primer lugar, haga una copy de security del file ofensivo en una carpeta fuera de su proyecto.
  • Eliminar el file duplicado y el file inicial
  • Para cada uno de sus objectives: vaya a Fases de compilation y elimine TODAS las menciones del file problemático.
  • ¡Agregue el file nuevamente a su proyecto, y Voila!

Agregué a la respuesta de Josh O'Conners en que los cambios que él recomendaba eran la raíz de mi problema. Tuve que limpiar la carpeta de compilation al presionar shift-option-command-k para completar la corrección.

Esto puede estar en su proyecto.pbxproj cuando hace una fusión con github o una herramienta similar.

Esto puede solucionarse abriendo el proyecto.pbxproj en su editor de text favorito y eliminando las declaraciones duplicadas .

Espero que solucionen tu problema.