Предупреждение о нескольких командах сборки при сборке — Objective C

#objective-c #build

#objective-c #сборка

Вопрос:

Когда я создаю свой проект iPhone в XCode, я получаю следующее предупреждение.

 [WARN]Warning: Multiple build commands for output file /Users/SilentCoder/Library/Developer/Xcode/DerivedData/myProject-csfqcpziyuvhbiatwwjtkkmwbxwv/Build/Products/Debug-iphonesimulator/myProject.app/car.png
  

Я не понимаю, что это значит. Я создал цели как для iPhone, так и для iPad для своего проекта.

Ответ №1:

Вероятно, вы дважды указали ресурс, который будет скопирован в ваш пакет / ресурсы.

(проверьте этапы сборки ресурса копирования)

Комментарии:

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

Ответ №2:

Работает для меня. Проверьте список ресурсов в разделе Project — Target — Build Phases — Copy Bundle Resources и удалите ссылки на ресурсы.

введите описание изображения здесь

Ответ №3:

Я создаю свой собственный первый фреймворк следующим образом[http://www.raywenderlich.com/65964/create-a-framework-for-ios ] (Как создать фреймворк для iOS), появляется то же предупреждение.

И у меня нет дополнительных ресурсов, кроме двух файлов исходного кода (.h и .m).

Наконец, я обнаружил, что файл .h отображается в двух местах: один есть Copy Files , другой есть Copy Header , и я удаляю последний, предупреждение исчезло

Ответ №4:

ПРИМЕЧАНИЕ: вы получаете точно такое же сообщение об ошибке в несколько иной ситуации: если файл заголовка дважды появляется во внутреннем списке заголовочных файлов Xcode для экспорта.

Если затронутый файл имеет суффикс .h, то … вместо удаления с этапа «Копировать ресурсы пакета» вам необходимо удалить с этапа «Копировать заголовки».

(ПРИМЕЧАНИЕ: это должно быть невозможно, и XCode НЕ ДОЛЖЕН ДОПУСКАТЬ этого, но обработка файлов заголовков Xcode ужасна (и не соответствует стандартам : ( ), поэтому довольно легко столкнуться с проблемой «дублированных команд для одного и того же файла заголовка»)