Реакция-родной run-ios не может найти симулятор
Я столкнулся с проблемой, при которой не запускаются "реакции-собственные run-ios", независимо от симулятора, который я добавляю к аргументу --simulator. XCode имеет правильное расположение для "инструментов командной строки"
Я всегда получаю сообщение об ошибке: не удалось найти симулятор iPhone X
Error: Could not find iPhone X simulator
at resolve (/Users/eric/.../swim/node_modules/react-native/local-cli/runIOS/runIOS.js:149:13)
at new Promise (<anonymous>)
at runOnSimulator (/Users/eric/.../swim/node_modules/react-native/local-cli/runIOS/runIOS.js:134:10)
at Object.runIOS [as func] (/Users/eric/.../swim/node_modules/react-native/local-cli/runIOS/runIOS.js:106:12)
at Promise.resolve.then (/Users/eric/.../swim/node_modules/react-native/local-cli/cliEntry.js:117:22)
Реактивная информация
> React Native Environment Info:
> System:
> OS: macOS 10.14.2
> CPU: (12) x64 Intel(R) Core(TM) i9-8950HK CPU @ 2.90GHz
> Memory: 6.76 GB / 32.00 GB
> Shell: 3.2.57 - /bin/bash
> Binaries:
> Node: 10.15.0 - /usr/local/bin/node
> Yarn: 1.13.0 - /usr/local/bin/yarn
> npm: 6.4.1 - /usr/local/bin/npm
> SDKs:
> iOS SDK:
> Platforms: iOS 12.1, macOS 10.14, tvOS 12.1, watchOS 5.1
> IDEs:
> Android Studio: 3.1 AI-173.4819257
> Xcode: 10.1/10B61 - /usr/bin/xcodebuild
> npmPackages:
> react: 16.6.3 => 16.6.3
> react-native: 0.57.8 => 0.57.8
> npmGlobalPackages:
> create-react-native-app: 1.0.0
> react-native-cli: 2.0.1
> react-native-git-upgrade: 0.2.7
Ответы
Ответ 1
Я нашел временное исправление:
В следующем файле:
/node_modules/react-native/local-cli/runIOS/findMatchingSimulator.js
... изменить строку 42 на:
if (!version.startsWith('com.apple.CoreSimulator.SimRuntime.iOS') && !version.startsWith('tvOS')) {
Ответ 2
Обновление
Это исправлено в v1.9.8.
Обновление cli - простое решение
npm install -g [email protected]
Эта проблема исправлена, но еще не выпущена.
https://github.com/react-native-community/react-native-cli/pull/274
Так что это может быть решено временно, чтобы исправить файл ниже.
/node_modules/react-native/local-cli/runIOS/findMatchingSimulator.js
Измените эту строку
if (!version.startsWith('iOS') && !version.startsWith('tvOS')) {
в
if (!version.includes('iOS') && !version.includes('tvOS')) {
Не забудьте применить это снова при переустановке пакетов.
Ответ 3
Попробуйте этот скрипт из Терминала
sed -i '' 's/launchWith/includes/g' node_modules/Reaction-native/local-cli/runIOS/findMatchingSimulator.js
Теперь бегите
react-native run-ios
Ответ 4
Просто делать
npm install
Затем он покажет предупреждения, а затем исправит их с помощью следующей команды
npm audit fix
Ответ 5
Я пробовал как ниже
Откройте Xcode
. Затем Preferences
→ Выберите Components
во вкладках.
Затем установите любой из (или более) доступных симуляторов в списке. Желательно последний наверху.
Это решает проблему.