«Cordova build ios» очень медленно работает на Mac ⇐ IOS
-
Гость
«Cordova build ios» очень медленно работает на Mac
Сборка Cordova CLI занимает более 5 минут на iMac и около 10 секунд на моем компьютере с Windows. Затем развертывание приложения на устройстве или в симуляторе в Xcode занимает около 2,5 минут, а в Windows — около 3 секунд.
Что происходит на iMac/Xcode, компиляция которого занимает ооочень много времени?
Mac Mini (2018 г.): 3,6 ГГц, четырехъядерный процессор Intel i3, память DDR4 64 ГБ, MacOS: Вентура 13.2.1 Интерфейс командной строки Кордовы: 11.1.0 Кордова-IOS: 6.2.0 Время компиляции: 5,5 минут (в среднем) Время развертывания: 2,5–3 минуты. Компиляция CLI: ionic cordova build ios ИЛИ cordova build ios HP EliteDesk 800 G5 Mini, Intel Core i7-9700T 2,00 ГГц, память DDR4 64 ГБ Windows 10 Интерфейс командной строки Кордовы: 11.1.0 Кордова-Android: 11.0.0 Время компиляции: 10–15 секунд (в среднем) Время развертывания: 3 секунды Команда компиляции CLI: ionic cordova build android ИЛИ cordova build android У меня был тот же iMac с Xcode 12, и сборка заняла около 30 секунд. Затем в Xcode 13 оно увеличилось примерно до 2 минут, а затем в Xcode 14 — более чем на 5,5 минут. И это только часть компиляции CLI... развертывание приложения через Xcode на подключенных устройствах легко занимает еще 2,5 минуты... мы говорили о 8+ минутах, чтобы скомпилировать и развернуть приложение. Как только оно начинает запускаться на устройстве или в симуляторе, приложение работает идеально, быстро реагирует и совсем не медленно.
Что изменилось в Xcode, что превратило его в такую свинью и что я могу сделать, чтобы исключить или значительно сократить время сборки? Я читал в других темах/форумах, как отключить debug в схеме развертывания Xcode, но это действительно противоречит цели использования Xcode и отладчиков при попытке устранения неполадок в новом коде и новых сборках.
Как есть, я тестирую все на Android до тех пор, пока новые версии моего приложения не станут максимально чистыми, затем я переношу код на iMac, и мне требуется целая вечность, чтобы устранить проблемы с пользовательским интерфейсом или плагинами, потому что развертывание занимает оооочень много времени. на устройства, чтобы я мог протестировать макеты и функциональность.
ОБНОВЛЕНИЕ 1: Для компиляции CLI можно ли как-нибудь отключить verbose? Я чувствую, что наблюдение за тем, как тысячи строк выводятся на консоль, не совсем помогает времени компиляции. Я не нашел способа сделать это (пока).
ОБНОВЛЕНИЕ 2. Я обнаружил кое-что интересное. Похоже, что ionic cordova build ios создает огромное количество устаревших файлов, расположенных за пределами разрешенного корневого пути. Когда я выполняю сборку из CLI, их создается около 2500; но я не вижу их, пока не разверну приложение из Xcode, они появляются в навигаторе задач Xcodes по мере развертывания приложения.
Затем я нашел способ очистить эти устаревшие файлы: в Xcode очистить проект и сразу же запустить его:
[*] + SHIFT + K [*] + SHIFT + R
Это займет несколько минут, но в конечном итоге все устаревшие файлы будут удалены. После этого развертывание приложения на устройстве занимает около 15 секунд. Это ОГРОМНОЕ улучшение. Однако... как только я снова создаю приложение из CLI ionic cordova build ios - сборка по-прежнему занимает более 5 минут, а затем в Xcode все эти устаревшие файлы снова вернулись, в результате чего развертывание снова заняло почти 3 минуты. Так что я действительно думаю, что виновником здесь является Cordova, создавшая эти почти 2500 устаревших файлов за пределами корневого пути.
Кто-нибудь знает, как я могу это исправить или запретить Кордове создавать эти устаревшие файлы?
ОБНОВЛЕНИЕ 3:
Я открыл отчет об ошибке/проблеме с cordova-ios на github. Здесь есть несколько информативных ответов с мыслью, что конкретное исправление в cordova-ios 7.0 может быть исправлением, а затем другие сообщения, в которых говорится, что никто не знает, почему это происходит.... несмотря ни на что, но я не могу обновиться до 7.0. пока.
https://github.com/apache/cordova-ios/issues/1372
Сборка Cordova CLI занимает более 5 минут на iMac и около 10 секунд на моем компьютере с Windows. Затем развертывание приложения на устройстве или в симуляторе в Xcode занимает около 2,5 минут, а в Windows — около 3 секунд.
Что происходит на iMac/Xcode, компиляция которого занимает ооочень много времени?
Mac Mini (2018 г.): 3,6 ГГц, четырехъядерный процессор Intel i3, память DDR4 64 ГБ, MacOS: Вентура 13.2.1 Интерфейс командной строки Кордовы: 11.1.0 Кордова-IOS: 6.2.0 Время компиляции: 5,5 минут (в среднем) Время развертывания: 2,5–3 минуты. Компиляция CLI: ionic cordova build ios ИЛИ cordova build ios HP EliteDesk 800 G5 Mini, Intel Core i7-9700T 2,00 ГГц, память DDR4 64 ГБ Windows 10 Интерфейс командной строки Кордовы: 11.1.0 Кордова-Android: 11.0.0 Время компиляции: 10–15 секунд (в среднем) Время развертывания: 3 секунды Команда компиляции CLI: ionic cordova build android ИЛИ cordova build android У меня был тот же iMac с Xcode 12, и сборка заняла около 30 секунд. Затем в Xcode 13 оно увеличилось примерно до 2 минут, а затем в Xcode 14 — более чем на 5,5 минут. И это только часть компиляции CLI... развертывание приложения через Xcode на подключенных устройствах легко занимает еще 2,5 минуты... мы говорили о 8+ минутах, чтобы скомпилировать и развернуть приложение. Как только оно начинает запускаться на устройстве или в симуляторе, приложение работает идеально, быстро реагирует и совсем не медленно.
Что изменилось в Xcode, что превратило его в такую свинью и что я могу сделать, чтобы исключить или значительно сократить время сборки? Я читал в других темах/форумах, как отключить debug в схеме развертывания Xcode, но это действительно противоречит цели использования Xcode и отладчиков при попытке устранения неполадок в новом коде и новых сборках.
Как есть, я тестирую все на Android до тех пор, пока новые версии моего приложения не станут максимально чистыми, затем я переношу код на iMac, и мне требуется целая вечность, чтобы устранить проблемы с пользовательским интерфейсом или плагинами, потому что развертывание занимает оооочень много времени. на устройства, чтобы я мог протестировать макеты и функциональность.
ОБНОВЛЕНИЕ 1: Для компиляции CLI можно ли как-нибудь отключить verbose? Я чувствую, что наблюдение за тем, как тысячи строк выводятся на консоль, не совсем помогает времени компиляции. Я не нашел способа сделать это (пока).
ОБНОВЛЕНИЕ 2. Я обнаружил кое-что интересное. Похоже, что ionic cordova build ios создает огромное количество устаревших файлов, расположенных за пределами разрешенного корневого пути. Когда я выполняю сборку из CLI, их создается около 2500; но я не вижу их, пока не разверну приложение из Xcode, они появляются в навигаторе задач Xcodes по мере развертывания приложения.
Затем я нашел способ очистить эти устаревшие файлы: в Xcode очистить проект и сразу же запустить его:
[*] + SHIFT + K [*] + SHIFT + R
Это займет несколько минут, но в конечном итоге все устаревшие файлы будут удалены. После этого развертывание приложения на устройстве занимает около 15 секунд. Это ОГРОМНОЕ улучшение. Однако... как только я снова создаю приложение из CLI ionic cordova build ios - сборка по-прежнему занимает более 5 минут, а затем в Xcode все эти устаревшие файлы снова вернулись, в результате чего развертывание снова заняло почти 3 минуты. Так что я действительно думаю, что виновником здесь является Cordova, создавшая эти почти 2500 устаревших файлов за пределами корневого пути.
Кто-нибудь знает, как я могу это исправить или запретить Кордове создавать эти устаревшие файлы?
ОБНОВЛЕНИЕ 3:
Я открыл отчет об ошибке/проблеме с cordova-ios на github. Здесь есть несколько информативных ответов с мыслью, что конкретное исправление в cordova-ios 7.0 может быть исправлением, а затем другие сообщения, в которых говорится, что никто не знает, почему это происходит.... несмотря ни на что, но я не могу обновиться до 7.0. пока.
https://github.com/apache/cordova-ios/issues/1372
Мобильная версия