Ошибка Xcode 10: несколько команд производят



error: Multiple commands produce '/Users/uesr/Library/Developer/Xcode/DerivedData/OptimalLive-fxatvygbofczeyhjsawtebkimvwx/Build/Products/Debug-iphoneos/OptimalLive.app/Info.plist':
1) Target 'OptimalLive' has copy command from '/Users/uesr/Desktop/workSpace/SEALIVE/SeaLive1.1/OptimalLive/Info.plist' to '/Users/uesr/Library/Developer/Xcode/DerivedData/OptimalLive-fxatvygbofczeyhjsawtebkimvwx/Build/Products/Debug-iphoneos/OptimalLive.app/Info.plist'
2) Target 'OptimalLive' has copy command from '/Users/uesr/Desktop/workSpace/SEALIVE/SeaLive1.1/OptimalLive/Server/Masonry/Info.plist' to '/Users/uesr/Library/Developer/Xcode/DerivedData/OptimalLive-fxatvygbofczeyhjsawtebkimvwx/Build/Products/Debug-iphoneos/OptimalLive.app/Info.plist'
3) Target 'OptimalLive' has process command with input '/Users/uesr/Desktop/workSpace/SEALIVE/SeaLive1.1/OptimalLive/Info.plist'


запуск кода в Xcode9 работает, но приводит к ошибке в Xcode10.

608   30  

30 ответов:

если вы получаете от этого Ditto команда создания нескольких экземпляров с одинаковым именем (не 'copy files' build phase), возможно, вам придется изменить Product Module Name.

  1. нажмите на вашу цель(Ы) Xcode жалуется на
  2. нажать на кнопку Build Settings
  3. искать Product Module Name
  4. измените имя на что-то уникальное

у нас есть цель часов и несколько целей уведомлений в нашем приложении, поэтому я просто ставлю такие вещи, как Extension on после имени модуля.

Я нашел это решение первоначально здесь:https://forums.developer.apple.com/thread/103913

эта проблема может возникнуть только из-за нескольких файлов Plist в приложении -

решение -> открыть цель - > этапы сборки > копировать ресурсы пакета и удалить info.plist оттуда.

enter image description here

Примечание: если вы также разработали приложение для часов, вам придется удалить plist из часов и расширения часов.

Я нашел решение для этой ошибки сборки, для тех, кто имеет ту же проблему с Xcode 10 build system, выполните следующие действия, чтобы исправить это:

  1. в Xcode перейдите в меню Файл- > Параметры проекта / рабочей области.
  2. измените систему сборки на устаревшую систему сборки.

Это позволит решить проблему сборки с новым Xcode 10.

Если вы хотите работать с новой системой сборки, то вы можете найти помощь по устранению неполадок С этой страницы справки apple Xcode.

надеюсь, что это помогает!

перейдите в раздел Xcode ->File - > Workspace Settings. Вы найдете один всплывающий, как.

enter image description here

выбираем " Устаревшая Система Сборки " из системного тега сборки. Нажмите на кнопку"сделал"

Примечание: убедитесь, что очистить ваш проект с "cmd + shift+alt+k" и "Данные"

построить свой проект, он будет работать прелесть :)

попробуйте и это. В Xcode->Файл->Параметры Проекта-> Построение Системы -> Устаревшая Система Сборки.

при проверке журнала сборки я заметил предупреждение:

note: Using new build system
note: Planning build
note: Constructing build description
Build system information
warning: The Copy Bundle Resources build phase contains this target's Info.plist file '/Users/<redacted>/Repositories/Whitesmith/optimize-ios/Carthage/Checkouts/WSStatusBarNotification/Miscellaneous/Info.plist'. (in target 'JDStatusBarNotification')

Итак, если это ваш случай, то просто иди к цели:

  1. Собрать Фаз
  2. Копия Пакета Ресурсов
  3. удалить info.plist.

попробуйте это его работа:

в Xcode перейдите в меню Файл- > Параметры проекта / рабочей области.

измените систему сборки на устаревшую систему сборки.

Если вы используете CocoaPods вы можете попробовать деинтегрировать стручки и установить снова. Это работает на меня.

pod deintegrate

pod install

У меня была та же проблема, у меня было еще одно вспомогательное приложение в главном приложении и скопируйте его в ресурс. В моем случае решается так :-

1) Цель - > 2) Этапы сборки 2) копирование файла (n элементов) 3) удаление файла копирования.

приложение-Помощник автоматически копируется в Xcode 10.0.

enter image description here

прежде чем я начну, обратите внимание, что мой проект использует Carthage в качестве менеджера зависимостей.

ни один из существующих ответов здесь решили мою проблему. То, что решило проблему для меня, было следующим.

во-первых, я заметил, что ошибка сборки указала на один фреймворк в частности. Затем я отфильтровал цель приложения > этапы сборки для этой платформы. Я заметил, что эта структура присутствовала как в "связывании двоичных файлов с библиотеками", так и в "внедрении фреймворков". Отмечая, что ни один из фреймворки, перечисленные в разделе "Embed Framework", были теми, которыми управлял Карфаген я удалил рассматриваемую структуру из"embed Framework". Затем я перестроил свой проект, и все работает нормально, включая функциональность, включенную рассматриваемой платформой.

У меня была куча Multiple commands produce предупреждения - не ограничивается информацией.plist дублирование в одной цели. Включая локализованные ресурсы и строковые файлы, заголовки и т. д.

решение: удалите все дубликаты в целевом членстве.

попробуйте все это вариант любой из этого 3 варианта будет работать для вас, наверняка

Option 1: Remove all files from

Target >> Build Phases > > Compile Sources

Target >> Build Phases > > Copy Bundle Resources

Option 2: Change the build system
-4-->В Xcode->Настройки Проекта-> Построение Системы -> Наследие Построить Систему
Option 3: remove and update existing pod

pod cache clean PromisesObjC
pod cache clean PromisesSwift
компакт [your_project_dir]
rm-rf стручки/
РМ файл контейнера.замок
обновление стручка

I hope this will help you, Happy coding :-)

Итак, проблема, с которой я столкнулся, заключается в том, что я случайно включил информацию.plist в настройках проекта - > этапы сборки - > копировать ресурсы пакета для моей цели.

У меня была эта проблема, когда у меня был файл с тем же именем в двух разных целях. По какой-то причине один из этих файлов у меня был частью обеих целей. Так что в основном у меня было два файла. И оба эти файла принадлежали одной цели.

имеет смысл, что цель может иметь только одно имя файла на цель, поэтому просто снимите флажок целевой элемент для файла, который не был связан с основной целью Исправлена проблема.

100% работающего

удалить все файлы из :

Target > > Build Phases > > Compile Sources

Target >> Build Phases > > Copy Bundle Resources

enter image description here

переход к Xcode 10, ошибки типа

error: Multiple commands produce '/Users/uesr/Library/Developer/Xcode/DerivedData/OptimalLive-fxatvygbofczeyhjsawtebkimvwx/Build/Products/Debug-iphoneos/OptimalLive.app/Info.plist':

может быть решена следующим образом:

на Xcode->File->Workspace/Project Settings-> Build System -> Legacy Build System.

была аналогичная проблема, но при .файлы swiftdoc.

У меня есть расширения и модульные тестовые цели в проекте. И у них было то же самое" имя модуля продукта " (PRODUCT_MODULE_NAME в настройках сборки), что и приложение. После внесения имен уникальный вопрос ушел.

Поиск & удалить дублировать файлы, которые создаются из нескольких команд.

здесь лишний Info.plist файл должен быть удален (в моем случае это было Contents.json)

error: Multiple commands produce '/Users/uesr/Library/Developer/Xcode/DerivedData/OptimalLive-fxatvygbofczeyhjsawtebkimvwx/Build/Products/Debug-iphoneos/OptimalLive.app/Info.plist'

это в основном означает, что у вас есть несколько файлов с именем Info.plist; Обычно это нормально, но случайно ваши файлы настроены на одно и то же целевое членство. Итак, исправление: щелкните каждый файл и проверьте их целевое членство справа, убедитесь, что они не перекрываются.

У меня была такая же проблема с plist. Оказывается, у меня было две копии, одна была пуста, а другая была в моей папке локализованных ресурсов. Удаление одного из них (пустого) решило проблему.

Если вы проверяете свою ошибку, строки 1) и 2) имеют разные пути. Вероятно, этот файл определен дважды на этапе копирования.

Проверьте свои целевые свойства, фазы сборки, скопируйте ресурсы пакета и найдите дублирующую информацию.файл plist. Выясните, какой путь неверен и удалить его. (Вероятно, вы также захотите удалить его из файловой системы.)

в моем случае информация.файл plist был взят из одного из моих кокосовых стручков. Удалил его и решил проблему.

ни одно из предложенных здесь решений не сработало для меня. Особенно это было связано с CocoaPods. Ранее я использовал Cocoapods 1.3.1. Простое обновление до версии 1.5.3 не решило проблему сразу.

шаги, которые я следовал были:

  1. Удалить Файл Контейнера.замок
  2. удалить каталог стручков
  3. Удалить Производные Данные И Очистить
  4. Выход Из Xcode
  5. обновить CocoaPods до 1.5.3
  6. выполнить pod install
  7. открыть рабочее пространство и построить

вот еще одно рабочее решение : (если вы используете стручки)

  • выберите "стручки" из боковой панели в качестве основных моментов на скриншоте.
  • нажмите на фазу сборки. Разверните раздел "заголовки". Есть 3 варианта Public, Private, Project
  • разверните Public и проверьте наличие дубликатов файлов. Удалить его. готово!!

enter image description here

перейдите в фазу сборки проекта и удалите информацию.plist из источников компиляции. Он удалит эту проблему, и проект снова будет активен.

enter image description here

в моем случае я импортировал файлы из другого проекта и имел тот же класс в двух местах.

У меня было следующее сообщение об ошибке:enter image description here

когда я скопировал ошибку, оказалось, что скопировать гораздо больше текстовой информации, и когда я прочитал дамп, я пришел к соответствующей строке:

:0: error: filename " EventNode.Свифт" использован дважды:

который следовал по местам и позволил мне устранить проблема.

в процессе я узнал, что должно быть в "Copy Bundle Resources":

  • Главная.раскадровка
  • активы.xcassets
  • любые сцены SpriteKit (.СКС) ваш проект использует

Я получил ту же проблему, но с заголовочными файлами.

enter image description here

в этом случае решение заключается в перемещении заголовков из раздела "Public" в раздел "Project".

enter image description here

для меня проблема была связана с тем, что один и тот же файл дважды включался в ресурсы пакета. Не знаю, как это произошло, но я удалил один из них, и он отлично скомпилировался с новой системой сборки.

для проектов зависимостей, управляемых cocoapods, решена проблема путем предоставления локального podspec для исключения информации.плист из первоисточников. Возьмите годзиппу в качестве примера

файл Podfile pod 'Godzippa', :podspec => "venders/godzippa.podspec"

Вендерс/godzippa.podspec s.source_files = 'Sources/*.{h,m}'

мой ProjectName.xcodeproj была допустимая и недопустимая ссылка на файл с тем же именем. Одно и то же имя файла в навигаторе проекта, одно имя было красным, другое в порядке. Я избавился от недопустимой ссылки один (красный), проблема решена.

в моем случае, у меня был такой же обычай Путь К Папке Общего Заголовка для двух различных статических библиотек. Один был для основного приложения, другой для приложения для часов. Изменен путь для приложения watch, и теперь все в порядке.

Comments

    Ничего не найдено.