Невозможно построить реагировать на собственный проект после обновления до xcode 11.0
У меня есть собственный реактивный проект, работающий на реагирующей собственной версии 0.59.8 и xcode версии 10.3. Каким-то образом мой xcode обновился до версии 11.0, и после этого я не могу собрать проект с помощью команды react-native run-ios
.
Я попытался очистить сборку и здание снова. Но это не помогает.
Я получаю следующую ошибку:
CoreData: annotation: Failed to load optimized model at path '/Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/Frameworks/InstrumentsPackaging.framework/Versions/A/Resources/XRPackageModel.momd/XRPackageModel 9.0.omo'
error Could not find iPhone X simulator.
Как решить эту проблему?
Ответы
Ответ 1
Не уверен насчет первой ошибки, но у меня та же проблема со второй ошибкой error Could not find iPhone X simulator
после обновления до XCode 11
По сути, я изменил строку 53 в собственном проекте реагирования /node_modules/react-native/local-cli/runIOS/findMatchingSimulator.js
с simulator.isAvailable !== 'YES'
на simulator.isAvailable !== true
.
Основная причина заключается в том, что новый XCode 11 изменил формат метаданных симулятора, и реакция собственного метода findMatchingSimulator сильно связана с предыдущим форматом.
Ответ 2
Мне удалось исправить ошибку "Не удалось найти симулятор iPhone X".
Вот шаги, чтобы исправить вышеуказанную ошибку:
Запустите команду find . -iname findMatchingSimulator.js
, чтобы найти файл findMatchingSimulator.js
.
В этом файле измените код с
if (simulator.availability !== '(available)' && simulator.isAvailable !== 'YES') {
continue;
}
от до
if (simulator.availability !== '(available)' && simulator.isAvailable !== true) {
continue;
}
С помощью этого симулятора ошибка устранена. Но все-таки другая ошибка
CoreData: annotation: Failed to load optimized model at path '/Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/Frameworks/InstrumentsPackaging.framework/Versions/A/Resources/XRPackageModel.momd/XRPackageModel 9.0.omo'
существует, что приводит к сбою сборки. Если я устанавливаю xcode 10.3 и запускаю команду react-native run-ios
, она все еще работает.
Надеюсь, проблема ясна. Какие-либо исправления для этой проблемы, которая происходит в XCode 11?
Ответ 3
Две вещи:
В Xcode 11 убедитесь, что вы используете реагирующее нативное сообщество /cli версии 1.9.8 минимум, поскольку оно интегрирует исправление для симуляторов Xcode 11 нового формата метаданных:
https://github.com/react-native-community/cli/releases/tag/v1.9.8
Кроме того, симулятор iPhone X больше не доступен, по крайней мере, с моей стороны. Вместо этого вы можете использовать iPhone 11:
react-native run-ios --simulator='iPhone 11'
Ответ 4
В моем случае:
react: 16.8.3
react-native: 0.59.9
Xcode: 11.0
- Добавить симулятор iPhone X: Откройте Xcode => Window => Устройства и симуляторы => Симуляторы => Нажмите кнопку "Плюс" внизу
- Установите последнюю версию cocoapods:
sudo gem install cocoapods
- Переустановите cocoapods в проекте: откройте папку проекта => ios => удалите папку
Podfile.lock
, Pods
, папку build
=> cd ios && pod install
react-native run-ios
Готово!
Ответ 5
После обновления моего XCode до версии 11 в списке симуляторов XCode отображаются только доступные имитаторы ios 13, поэтому нам нужно добавить симуляторы предыдущей версии, для этого в XCode перейдите в "Настройки" → "Компоненты" → и загрузите и установите предыдущий версия ios simulator (в моем случае ios 11.0), после этого он должен показать другие симуляторы в списке доступных симуляторов. Очистите весь кэш и перезапустите командуact-native run-ios, и теперь она должна работать.
Ответ 6
Попробуйте запустить, указав версию симулятора.
react-native run-ios --simulator="iPhone 11 Pro Max"
Ответ 7
Я обновил "react-native"
до "^0.61.1"
, и он работал для меня
Ответ 8
У меня была такая же проблема, и даже вернулся к xCode 10.3.... и все еще была та же проблема. Потом я наткнулся на это https://github.com/react-native-community/cli/pull/414. Мне показалось, что, возможно, они устранили проблему и что я работал со старой версией CLI. Продолжил удалять запись в моем файле блокировки и запустить npm install. Работаю сейчас. CLI до 1.11.2 https://github.com/react-native-community/cli