erro: Vários comandos produzem '/Users/uesr/Library/Developer/Xcode/DerivedData/OptimalLive-fxatvygbofczeyhjsawtebkimvwx/Build/Products/Debug-iphoneos/OptimalLive.app/Info.plist': 1) O destino 'OptimalLive' possui um comando de cópia do destino '/Users/uesr/Desktop/workSpace/SEALIVE/SeaLive1.1/OptimalLive/Info.plist' para '/ Usuários / uesr / Library / Developer / Xcode / DerivedData / OptimalLive-fxatvygbofczeyhjsawtebkimvwx / Build / Products / Debug-iphoneos / OptLive .app / Info.plist '2) O destino' OptimalLive 'possui o comando de cópia de' /Users/uesr/Desktop/workSpace/SEALIVE/SeaLive1.1/OptimalLive/Server/Masonry/Info.plist 'para' / Users / uesr / Biblioteca / Desenvolvedor / Xcode / DerivedData / OptimalLive-fxatvygbofczeyhjsawtebkimvwx / Construção / Produtos / Iphone-depuração / OptimalLive.app / Info.plist '3) Target' OptimalLive 'possui comando de processo com a entrada '/Users/uesr/Desktop/workSpace/SEALIVE/SeaLive1.1/OptimalLive/Info.plist'
A execução do código no Xcode9 funciona, mas há um erro no Xcode10.
fonte
Respostas:
O problema pode estar ocorrendo devido a vários arquivos Plist ou outros dentro do App-
Solução -> Abrir destino -> Fases de construção> Copiar recursos do pacote e remover a
info.plist
partir daí.Nota: Se você desenvolveu um aplicativo de relógio também, também será necessário remover a lista do relógio e a extensão do relógio.
fonte
info.plist
arquivo em uma das dependências particulares do CocoaPods que estava sendo recolhido porque correspondia àsource_files
propriedade do podspec . Eu não precisava doinfo.plist
arquivo no meu módulo, então apenas o excluí.Encontrei a solução para esse erro de compilação. Para qualquer outra pessoa com o mesmo problema com o sistema de compilação Xcode 10, siga as seguintes etapas para corrigi-lo:
Ele resolverá o problema de compilação com o novo Xcode 10.
Se você deseja trabalhar com o novo sistema de compilação, pode encontrar a ajuda para solução de problemas nesta página de ajuda do Apple Xcode .
Espero que isto ajude!
fonte
Vá para Xcode -> Arquivo -> Configurações da área de trabalho. Você encontrará um pop-up como.
Selecione " Sistema de Compilação Legado " na tag Build System. Pressione " Concluído " "
Nota: - Certifique-se de limpar seu projeto com " cmd + shift + alt + k " e " Dados Derivados "
Construa seu projeto, ele funcionará com charme :)
fonte
Tente isso também. Xcode-> Arquivo-> Configurações do Projeto-> Sistema de Compilação -> Sistema de Compilação Legado.
fonte
Se você estiver obtendo isso do
Ditto
comando criando várias instâncias com o mesmo nome (NÃO'copy files' build phase
), talvez seja necessário alterar oProduct Module Name
.Build Settings
Product Module Name
Como temos um alvo de exibição e alguns de notificação no nosso aplicativo, coloco coisas como
Extension
no final do nome do módulo.Encontrei esta solução originalmente aqui: https://forums.developer.apple.com/thread/103913
fonte
All
à direita de onde você procura paraProduct Module Name
fazer com que essa configuração seja exibida.Eu estava experimentando o Core Data. Criei um modelo de dados para um programa simples de lista de verificação e gerei o NSManagedObjects. Quando compilei o projeto, recebi o seguinte erro:
O problema era que o modelo de dados (CheckList.xcdatamodeld no meu caso) estava na lista "Fontes de compilação". O projeto foi compilado corretamente quando o removi da lista.
EDITAR
Como @WilliamT. explica nos comentários, você precisa do xcdatamodeld na lista de compilação. Em vez disso, acesse suas entidades no arquivo xcdatamodeld. Selecione os modelos com erro, expanda o painel esquerdo e altere o campo "Codegen" para "Manual / None".
fonte
Ao verificar o log de compilação, observei um aviso:
Então, se esse for o seu caso, basta ir ao seu destino:
info.plist
.fonte
Se você usa o CocoaPods, tente desintegrar os pods e instalar novamente. Funciona para mim.
pod deintegrate
pod install
fonte
Tente isto Está funcionando:
No Xcode, vá para Arquivo-> Configurações do Projeto / Área de Trabalho.
Altere o sistema de compilação para o sistema Legacy Build.
fonte
Leia esta resposta se a mensagem de erro referenciar arquivos de dados principais
Sinopse: Você pode ter arquivos de classe de objeto gerenciados Core Data gerados automaticamente e manualmente.
Esta resposta se aplica se a primeira linha do erro se referir a um arquivo Foo + CoreDataProperties.o ou Foo + CoreDataClass.o . Exemplo:
error: Multiple commands produce '/Users/me/Library/Developer/Xcode/DerivedData/MyApp-uebslaqdwgldkjemijpdqmizgyzc/Build/Intermediates.noindex/ MyApp /Debug-iphonesimulator/ MyApp.build/Objects-normal/x86_64/Foo+CoreDataProperties.o':
1) Target ' MyApp ' (project ' MyApp ') has compile command for Swift source files
2) Target ' MyApp ' (project ' MyApp ') has compile command for Swift source files
A causa raiz pode ser vista expandindo a seção Arquivos de origem Compile Swift da Transcrição de compilação. Por exemplo:
<unknown>:0: error: filename "Address+CoreDataClass.swift" used twice: '/Users/myUserName/Projects/Jnky/Foo+CoreDataProperties' and '/Users/jk/myUserName/Developer/Xcode/DerivedData/MyApp-uebslaqdwgldkjemijpdqmizgyzc/Build/Intermediates.noindex/MyApp.build/Debug/MyApp.build/DerivedSources/CoreDataGenerated/Jnky/Foo+CoreDataProperties.swift'
O primeiro arquivo mencionado existe um arquivo de origem no diretório do projeto, gerado por alguém selecionando seu modelo de dados no Navegador de Projeto e clicando no menu Editor > Criar Subclasse de Objeto Gerenciado . Esse recurso foi adicionado no Xcode 7 ou mais.
O segundo arquivo é um arquivo com o mesmo nome, mas que está oculto no Xcode
DerivedData
. Esse arquivo é gerado automaticamente pelo Xcode durante todas as construções, se o arquivo de modelo de dados (.xcdatamodeld
) for incluído na fase de construção das fontes de compilação do destino . Este recurso foi adicionado no Xcode 9 ou mais. Zero, um ou dois arquivos são gerados para cada entidade / classe, dependendo da configuração do pop-up Codegen . Esse pop-up está no Data Model Inspector quando você seleciona uma entidade ao editar seu modelo de dados…As configurações são:
Então você vê que o problema ocorre quando um desenvolvedor (como eu) acostumado ao Xcode mais antigo inicia um projeto em um Xcode mais recente. Achamos que precisamos usar o item de menu Criar subclasse de objeto gerenciado , o que fazemos, para criar os arquivos que podemos ver no Project Navigator sem perceber que nossas configurações no pop-up Codegen estão fazendo com que o Xcode crie arquivos duplicados, que a Apple "inteligentemente" não aparece no Project Navigator, porque eles não confiam nos desenvolvedores para ler e prestar atenção ao comentário no cabeçalho // Este arquivo foi gerado automaticamente e não deve ser editado.
Solução 1 - Use a maneira mais antiga
Você pode desativar todo o Codegen automático para um modelo de dados com apenas uma configuração:
.xcdatamodeld
arquivo).Solução 2 - Core Data Magic para iniciantes
Aqui, você entra no caminho mais recente.
Com esta solução, suas definições de classe são geradas automaticamente a partir do modelo de dados em cada construção. Você nem pode vê-los. É Core Data Magic , agradável e simples para iniciantes.
Solução 3 - para a maioria dos aplicativos do mundo real
Mas a Solução 2 não é boa se você realmente deseja adicionar propriedades não gerenciadas. (O Objective-C não permite que propriedades sejam adicionadas em categorias e Swift não permite que propriedades armazenadas sejam adicionadas em extensões.) Portanto, na maioria dos aplicativos do mundo real, você provavelmente deseja ir a meio caminho entre as Soluções 1 e 2…
(Agradecimentos à resposta da Positron. Minha resposta aqui explica por que a resposta da Positron (minha solução 1) funciona e adiciona a solução 2 e a solução 3.)
fonte
Uma opção que resolveu meu problema é alterar o sistema de compilação para o sistema de compilação herdado. Siga os seguintes passos no Xcode 10+.
Aqui eu escrevi um artigo detalhado sobre o problema e sua solução. Erro Xcode: Vários comandos produzem
fonte
No meu caso, o PDFGenerator estava produzindo um arquivo info.plist, apenas o excluí.
fonte
Eu tive o mesmo problema, eu tinha mais um aplicativo auxiliar no aplicativo principal e copie isso no recurso. No meu caso resolvido como: -
1) Alvo -> 2) Fases de construção 2) Copiar arquivo (n itens) 3) Remover arquivo de cópia.
O aplicativo Helper copiado automaticamente no Xcode 10.0.
fonte
Nenhuma das soluções propostas aqui funcionou para mim. Isso ocorreu principalmente devido ao CocoaPods. Eu estava usando Cocoapods 1.3.1 anteriormente. Simplesmente atualizar para a 1.5.3 não resolveu o problema imediatamente.
Os passos que segui foram:
pod install
fonte
install! 'cocoapods', :disable_input_output_paths => true
no topo do meu podfile. Além disso, se você não deseja atualizar seus pods - não exclua podfile.lock e todos os pods serão instalados na versão atual.Antes de começar, observe que meu projeto utiliza Cartago como gerente de dependência.
Nenhuma das respostas existentes aqui resolveu meu problema. O que resolveu o problema para mim foi o seguinte.
Primeiro, notei que o erro de construção apontava uma estrutura em particular. Em seguida, filtrei o App Target> Build Fhases para essa estrutura. Percebi que essa estrutura estava presente nos "Link Binary With Libraries" e "Embed Frameworks". Observando que nenhuma das estruturas listadas em "Embed Frameworks" era gerenciada por Carthage, removi a estrutura em questão de "Embed Frameworks". Em seguida, reconstruí meu projeto e tudo funciona bem, incluindo a funcionalidade ativada pela estrutura em questão.
fonte
Passos:
fonte
Tente todas essas opções, qualquer uma dessas três opções funcionará para você, com certeza
fonte
Portanto, o problema que eu estava tendo é que eu incluí acidentalmente o Info.plist nas configurações do projeto -> Fases de construção -> Copiar recursos do pacote para o meu destino.
fonte
Esse problema surgiu para mim depois de adicionar uma segunda parte do conjunto de SDKs Fabric ao aplicativo.
O que realmente aconteceu foi que o GoogleUtilies Framework foi adicionado duas vezes ao projeto Pods
Isso teria sido bom antes do Xcode 10, mas o Xcode 10 reclamará se um arquivo tiver duas ações contra ele (neste caso, uma ação de cópia).
É seguro remover a segunda estrutura.
fonte
Aqui está outra solução funcional: (Se você estiver usando Pods personalizados)
fonte
Eu recebi vários
Multiple commands produce
avisos - não limitados à duplicação info.plist em um alvo. Incluindo recursos localizados e arquivos de string, cabeçalhos etc.Solução: remova todas as duplicações na associação de destino.
fonte
Eu tive esse problema quando tinha um arquivo com o mesmo nome em dois destinos diferentes. Por alguma razão, um desses arquivos fazia parte dos dois destinos. Então, basicamente, eu tinha dois arquivos. E os dois arquivos pertenciam a um destino.
Faz sentido que um destino possa ter apenas um nome de arquivo por destino; portanto, desmarque a caixa de membro de destino do arquivo que não estava relacionado ao principal destino.
fonte
Eu usando Cartago e Xcode 10.
Minha solução é -> Projeto -> Alvo -> Geral ->
Remova as estruturas adicionadas com Carthage de "Binários incorporados"
normalmente você tem que adicionar um script nas fases de compilação para remover a arquitetura da loja de aplicativos.
No Xcode 10, o script parece sempre chamado. Portanto, ele copia as estruturas para o lugar certo e você não precisa adicioná-las à guia Geral.
Nota: se não estiver definido -> em Configurações de compilação -> Caminhos de pesquisa -> Caminhos de pesquisa da estrutura -> defina o caminho para a estrutura que você adicionou com Cartago .... por exemplo. "$ (PROJECT_DIR) / Cartago / Compilação / iOS"
fonte
Vale ressaltar que esse erro pode ser produzido após a geração automática de modelos CoreData em que o Codegen não está definido como Manual / Nenhum.
Para corrigir isso no Xcode 10, clique duas vezes no arquivo xcdatamodeId e selecione cada uma de suas entidades e defina Codegen como Manual / None em Class no seu Data Model Inspector.
fonte
Teve um problema semelhante, mas com arquivos .swiftdoc.
Eu tenho extensões e metas de teste de unidade no projeto. E eles tinham o mesmo "Nome do módulo do produto" (PRODUCT_MODULE_NAME nas configurações de compilação) do aplicativo. Depois de fazer nomes questão única ido.
fonte
Mudando para o Xcode 10, erros como
pode ser resolvido da seguinte maneira:
Vá para
Xcode->File->Workspace/Project Settings-> Build System -> Legacy Build System
.fonte
Vá na fase de criação do projeto e remova info.plist das fontes de compilação. Isso removerá esse problema e o projeto estará ativo novamente.
fonte
Um dos meus CocoaPods foi desatualizado e causou o problema. Os pods foram atualizados e funcionou bem.
Acredito que pode ter sido o LivePerson SDK
fonte
Meu problema estava no Xcode 10 sendo executado no Mojave e enquanto tentava executar testes de unidade que escrevi antes de atualizar para o XCode 10.
No meu caso, tive esse problema ao executar meu
TestTarget
destino. Para resolver, eu tive que:TestTarget > build phases > Target Dependencies
)já que eu tinha dois outros destinos além do meu
TestTarget
e ambos estavam executando o mesmo script e criando / copiando arquivos em um determinado momento.E isso entrou em conflito com o que foi mencionado nas Notas de versão do sistema de compilação para o Xcode 10 aqui :
Nova atualização após a atualização do Xcode 10.1 para 10.2
Problema semelhante apareceu novamente após a atualização para o Xcode 10.2. Tenho vários destinos por projeto:
Target1
eTarget2
resolvi esse problema:Edit Scheme > Build
eTarget1
under,Test
pois eu sabia que eraTarget2
importadoTarget1
Também para observar aqui,
Target2
a caixa de seleção deve permanecer marcada emTest
fonte
Pode haver 2 soluções diferentes para se livrar desse problema:
Solução 1
Como podemos ver, estava recebendo o mesmo erro. No meu caso, havia uma cópia extra da pasta Chat21Core no TildeskWidget estava criando um problema. Portanto, uma das soluções possíveis também pode ser apenas ler o erro completamente e tente descobrir se há alguma cópia extra referenciada no projeto ou não.
Solução 2
Outra solução simples que encontrei quando enfrento o mesmo tipo de problema para um projeto diferente. Desta vez, tive que aplicar uma solução diferente.
pod deintegrate
do projeto.pod install
e tente criar o projeto.Espero que isso possa funcionar para você ..
fonte