Невозможно построить реагировать на собственный проект после обновления до 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
  1. Добавить симулятор iPhone X: Откройте Xcode => Window => Устройства и симуляторы => Симуляторы => Нажмите кнопку "Плюс" внизу
  2. Установите последнюю версию cocoapods: sudo gem install cocoapods
  3. Переустановите cocoapods в проекте: откройте папку проекта => ios => удалите папку Podfile.lock, Pods, папку build => cd ios && pod install
  4. 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