#ios #xcode #mogenerator
Вопрос:
Вчера, без всякой провокации, Xcode начал автоматически удалять Tools/mogenerator
файл в моем проекте при каждой сборке. Когда я отбрасываю полученное удаление git (возвращаю файл обратно) и перестраиваю, Xcode быстро удаляет файл снова. Этот файл необходим для запуска скрипта в моем проекте, поэтому его удаление, очевидно, нарушает мои сборки, но, похоже, нет способа убедить Xcode просто оставить его там, где ему место.
У меня есть:
- Очищен и восстановлен
- Бежать
git clean -fdx
- Удаленный
Xcode/DerievedData
- Перезапустил свою машину
- Сбросил ядерную бомбу и повторно закрыл репо
- Клонировал репозиторий в другую папку
- Обновленный Xcode
- Удален и переустановлен Xcode
Я делал большинство из них несколько раз.
Я единственный в своей команде, у кого возникла эта проблема, и чистый клон репозитория вызывает у меня точно такую же проблему, поэтому я уверен, что это не имеет никакого отношения к моему коду. Это должно быть что — то в моем окружении. Но я не могу припомнить, чтобы делал что-то, что могло бы так повлиять на мое окружение. Вчера я построил без проблем, а через 5 минут я построил снова, и это произошло. Я ничего не менял.
Я в полной растерянности, как и все остальные инженеры в моей команде. Никто из нас раньше не видел ничего подобного, и ничто из того, что мы пробовали, не сработало. Это кому-нибудь знакомо? Есть ли еще один шаг, который я могу предпринять, чтобы очистить свою окружающую среду?
Обновить
Похоже, что этот сценарий запуска в цели Mogenerator и является причиной проблемы. Изначально я предполагал , что это сработало, потому что это было единственное, на что ссылаются Tools/mogenerator
, но оказывается, когда я удаляю его, файл вообще не удаляется, и все работает нормально. У всех остальных в моей команде точно такой же сценарий, поэтому я понятия не имею, почему это вызывает проблемы только у меня.
Tools/mogenerator -m Inspirato/Inspirato.xcdatamodeld --machine-dir Inspirato/Model/Generated --human-dir Inspirato/Model --swift --template-var arc=true --template-var scalarsWhenNonOptional=true
Комментарии:
1. попробуйте установить среду на виртуальной машине.
2. Попробуйте просмотреть журнал сборки (меню просмотра -> Навигаторы ->> Отчеты или cmd-9), чтобы узнать, можете ли вы найти шаг, на котором он удаляется.
3. @TomHarrington Я не вижу ничего подозрительного. Есть ли что-то конкретное, что вы бы посоветовали мне поискать?
4. Не совсем так, но удаление подобных файлов-это не то, что обычно делает Xcode. Однако он документирует свои шаги в журнале сборки, поэтому это кажется хорошим местом для поиска информации. Я бы попробовал экспортировать журнал сборки в виде текстового файла (кнопка «Экспортировать…» вверху), чтобы вы могли видеть каждую выполняемую команду. Просканируйте файл на наличие любого упоминания о mogenerator.