Печать: Запись,": CFBundleIdentifier", Не Существует


когда я запускаю react-native run-ios сборка завершается успешно, но я получаю ошибку ниже. Я проверил все вокруг, но ничего не работает. Используя sudo перед командой тоже не помогает. Я с помощью Xcode 7.3, реагировать родной CLI: 0.2.0, реагировать родной: 0.24.1, узел У5.11.0.

=== BUILD TARGET mobileTests OF PROJECT mobile WITH CONFIGURATION Release ===

Check dependencies

** BUILD SUCCEEDED **

Installing build/Build/Products/Debug-iphonesimulator/mobile.app
An error was encountered processing the command (domain=NSPOSIXErrorDomain, code=2):
Failed to install the requested application
An application bundle was not found at the provided path.
Provide a valid path to the desired application bundle.
Print: Entry, ":CFBundleIdentifier", Does Not Exist
/Users/astiefel/workspace/bosspayments/mobile/node_modules/promise/lib/done.js:10
      throw err;
      ^

Error: Command failed: /usr/libexec/PlistBuddy -c Print:CFBundleIdentifier build/Build/Products/Debug-iphonesimulator/mobile.app/Info.plist
Print: Entry, ":CFBundleIdentifier", Does Not Exist

    at checkExecSyncError (child_process.js:470:13)
    at Object.execFileSync (child_process.js:490:13)
    at _runIOS (runIOS.js:91:34)
    at runIOS.js:24:5
    at tryCallTwo (/Users/astiefel/workspace/bosspayments/mobile/node_modules/promise/lib/core.js:45:5)
    at doResolve (/Users/astiefel/workspace/bosspayments/mobile/node_modules/promise/lib/core.js:200:13)
    at new Promise (/Users/astiefel/workspace/bosspayments/mobile/node_modules/promise/lib/core.js:66:3)
    at Array.runIOS (runIOS.js:23:10)
    at Object.run (/Users/astiefel/workspace/bosspayments/mobile/node_modules/react-native/local-cli/cli.js:86:13)
    at Object.<anonymous> (/usr/local/lib/node_modules/react-native-cli/index.js:88:7)
30 53

30 ответов:

открыть проект в XCode

Если Xcode > 9 выполнить команду react-native upgrade

затем

1.Перейдите в файл - > настройки проекта

2.Нажмите кнопку Дополнительно

3.Выберите "пользовательский" и выберите "относительно рабочей области" в выпадающем меню

4.Изменения "сборка/продукты" для "построить/построить/продукции"

Add package

5.нажмите кнопку Готово, готово

обновление реагировать с помощью react-native upgrade сделал это для меня.

отказ от ответственности: это перезаписывает все ваши конфигурации iOS,используйте с осторожностью!

это может произойти, если вы отсутствуете config.h,

обновление config.h,

1) Закройте Xcode.

2) откройте терминал, перейдите в корневую папку вашего проекта и сделать:

cd node_modules/react-native/third-party/glog-{X}.{X}.{X}/

3) запустите скрипт настройки:

./configure

4) Откройте Xcode и попробуйте запустить приложение.

{X}: номер версии glog

Я также столкнулся с этой проблемой, а также и я нашел способ, чтобы исправить это

вот что я сделал:

1) Убедитесь, что в каталоге файлов нет пробелов.

2) cd каталог проекта

3) выполнить команду react-native upgrade

4) перейдите в родную папку ios и откройте проект xcode.

5) перейдите в меню Файл > Настройки проекта > дополнительно...

6) Выберите Custom > Относительно рабочего пространства

7) путь к продуктам должен быть "build / Build / Products"

8) промежуточный путь должен быть 'build / Build / Intermediates'

9) теперь попробуйте запустить команду в терминале react-native run-ios

Я надеюсь, что это поможет некоторым из нас сталкиваются с этой проблемой.

моя проблема заключалась в том, что моя сборка была в режиме выпуска вместо режима отладки. В результате идентификатор указывал на то, чего не существовало. Я изменил тип сборки, и он в конечном итоге работает.

это случилось со мной, когда моя папка node_modules стала сумасшедшей после установки нового пакета. Я убил папку rm -rf node_modules а потом сделал npm install чтобы переустановить мои пакеты, и это исправило его.

на react-native@0.46.4 следующий сделал трюк для меня:

1) Проверьте свои пути, откройте свой .xcodeproj файл (не .xcworkspace) файл и:

  • перейти к файлу > настройки проекта > дополнительно

  • custom > относительно рабочего пространства

  • установите путь к продуктам в 'build/Build/Products'
  • установите промежуточный путь к 'build/Build/Intermediates'
  • нажмите "Готово" и сохранить изменения

2) запустить rm -rf ios/build в корневом каталоге вашего проекта

3) Закройте react packager

4) Run react-native run-ios снова

Если вы получили эту ошибку, то у вас, вероятно, нет правильного пути для вашего приложения.

произошла ошибка при обработке команды (domain=NSPOSIXErrorDomain, code=2): Не удалось установить запрошенное приложение Пакет приложений не найден по указанному пути. Укажите допустимый путь к нужному пакету приложений. Print: Запись,": CFBundleIdentifier", Не Существует

React Native жестко закодировал его как часть их команды run-ios в runIOS.js

build/Build/Products/${configuration}-${isDevice ? 'iphoneos' : 'iphonesimulator'}/${appName}.app

к сожалению, Xcode имеет разные пути сборки в зависимости от вашей конфигурации и от того, используете ли Вы проект Xcode или рабочую область. Я считаю, что путь по умолчанию для проекта XCode-это build/Products.
Я отправил этот запрос на вытягивание 11899 чтобы дать программистам больше гибкости от CLI.

0.44 нормально работать,но 0.45 не может, может быть, это проблема версии я решил это с помощью следующей команды: rninit init TaxiApp --source react-native@0.44.0;

мой терминал выдает то же сообщение из-за удаления некоторых симуляторов, которые я не использую в Xcode.

если вы запустите react-native run-ios без каких-либо конкретных параметров react-native будет запускать симулятор по умолчанию, который является iPhone 6 с iOS 10.3.1 в моем случае, и я случайно удалил этот симулятор.

вот сообщения об ошибках:

xcodebuild: error: Unable to find a destination matching the provided destination specifier:
        { id:F3A7BF54-B827-4517-A30D-8B3241C8EBF8 }

Available destinations for the "albums" scheme:
    { platform:iOS Simulator, id:CD64F26B-045A-4E27-B05A-5255924095FB, OS:10.3.1, name:iPad Pro (9.7 inch) }
    { platform:iOS Simulator, id:8FC41950-9E60-4264-B8B6-20E62FAB3BD0, OS:10.3.1, name:iPad Pro (10.5-inch) }
    { platform:iOS Simulator, id:991C8B5F-49E2-4BB7-BBB6-2F5D1776F8D2, OS:10.3.1, name:iPad Pro (12.9 inch) }
    { platform:iOS Simulator, id:B9A80D04-E43F-43E3-9CA5-21137F7C673D, OS:10.3.1, name:iPhone 7 }
    { platform:iOS Simulator, id:58F6514E-185B-4B12-9336-B8A1D4E901F8, OS:10.3.1, name:iPhone 7 Plus }

. . .

Installing build/Build/Products/Debug-iphonesimulator/myapp.app
An error was encountered processing the command (domain=NSPOSIXErrorDomain, code=2):
Failed to install the requested application
An application bundle was not found at the provided path.
Provide a valid path to the desired application bundle.
Print: Entry, ":CFBundleIdentifier", Does Not Exist

Command failed: /usr/libexec/PlistBuddy -c Print:CFBundleIdentifier build/Build/Products/Debug-iphonesimulator/myapp.app/Info.plist
Print: Entry, ":CFBundleIdentifier", Does Not Exist

чтобы избавиться от них, откройте свой Xcode и проверьте наличие доступных симуляторов (как же как терминал в списке) и запустить react-native run-ios --simulator="your device name"

для моего случая, я бегу react-native run-ios --simulator="iPhone 7" проблема решена.

через пару месяцев, попробовав все ответы, я, наконец, обновляю свою ОС до Sierra, обновляю XCode до последней версии, и с этим все ошибки исчезают. Надеюсь, это может помочь некоторым людям там!

для меня это была проблема с случайной настройкой модулей с помощью Cocoapods & react-native link в то же время.

Не смешивайте эти два для одних и тех же модулей!

добавление, это работает для меня, когда ничего выше исправления:

  1. установите реагировать родной ГИТ-модернизировать и обновлять свой проект. npm i -g react-native-git-upgrade && react-native-git-upgrade
  2. открыть Xcode - > файл - > настройки проекта - > дополнительно.
  3. выбираем "Custom", затем выбираем " относительно рабочего пространства " и нажмите кнопку Готово, готово.
  4. обновите свой CLI. npm i -g react-native-cli
  5. обновите Nodejs 8 и NPM. nvm install --lts и nvm install-latest-npm
  6. удалить прошивкой/строительство и папки node_modules (в корневом каталоге проекта)
  7. продолжайте с npm install и react-native run-ios, и обними меня :-)

это, наконец, работает здесь.

  • Mac OS High Sierra 10.13.4
  • Xcode 9.3
  • NPM 5.8.0
  • узел 8.11.1
  • RN 0.55.2

в моем случае я вытаскиваю проект из git, и он также включает папку ios.

сначала я удаляю папку ios rm -rf ios тогда,react-native upgrade

вы проверили, что вы объявили идентификатор пакета? Вы можете сделать это, нажав на файл проекта в xcode, а затем выбрав вкладку Общие, и он указан в первом текстовом поле в разделе "Identity". Другой способ проверить-это проверить вашу информацию.plist-файл в папке ios вашего проекта. Вот как это показано в моей информации.файл plist. Мой реальный идентификатор пакета для моего проекта в Xcode.

<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>

я обновил Xcode до v8, и ошибка была устранена.

эта работа для меня Нажмите на проект RCTWebSocket в навигаторе и удалите флаги в разделе параметры сборки > пользовательские флаги компилятора enter image description here

Я нашел, как решить эту проблему: не используйте пространство в пути вашего проекта!

Это работает для меня. Следуйте инструкциям https://facebook.github.io/react-native/docs/getting-started.html (построение проектов с машинным кодом).

перед react-native run-ios команда, загрузите модуль boost node из https://sourceforge.net/projects/boost/files/boost/1.63.0/ и заменить node_modules / react-native / third-party/boost_1_63_0

теперь бегите react-native run-ios команда

при выполнении npm install команда некоторое время проблема с интернет-выпуском, файлы в node_modules\react-native\third-party Не загружается должным образом, поэтому, пожалуйста, проверьте, что это правильно загружено или нет, если нет, удалите node_modules и установите его снова

выполнить react-native run-ios команда

на Print: Entry, ":CFBundleIdentifier", Does Not Exist сообщение просто указывает, что ваш проект не удалось скомпилировать или связать. Вам нужно будет вернуться к своим выводам, чтобы найти подсказку о фактической первопричине.

Если у вас возникли проблемы, посмотрите на полный вывод, а не только последние несколько строк. Вы можете открыть проект в Xcode и нажать ⌘B, чтобы построить его. Ошибки сборки в Xcode должны помочь вам найти основную причину сбоя.

Я решил эту проблему, удалив папку сборки в моем проекте iOS и снова построив.

$ rm -rf ios/build/
$ react-native run-ios

к сожалению, ни одно из упомянутых решений не сработало для меня.

после опробования некоторых ответов от этот вопрос, наконец-то сработало следующее:

поскольку одна или несколько требуемых сторонних библиотек iOS не были правильно загружены в ~/.rncache (то есть файлы там были повреждены и не могли быть распакованы), я удалил содержимое этой папки, побежал react-native run-ios снова, и это в конечном итоге сделал трюк.

ИСПРАВИТЬ ДЛЯ OSX EL CAPITAN

Я все еще на OSX 10.11.6 с XCode 8.2.1 ... обновят когда-нибудь, но не сегодня. Я смог пройти мимо ошибки: CFBundleIdentifier, понизив react native до 52.0

yarn upgrade react-native@52.0

получил мне успешную сборку на симуляторе. Ура!

для меня это связано с проблемой совместимости react-native с Xcode9.4. Я решил, используя следующие шаги. на моем проекте / ROOT

  1. rm-rf node_modules
  2. react-native upgrade
  3. npm install
  4. react-native run-ios

решает проблему, этот поток помог мне понять проблему.

удалите модули узла и запустите "npm install" в каталоге проекта. Теперь вы можете запустить проект.

добавлять в список возможных причин: xcodebuild может быть поврежден.

в моем случае xcodebuild ничего не делал, поэтому он никогда не создавал каталог ios/build/, и вышеприведенная ошибка привела.

Я использовал 'which xcodebuild' в командной строке, удалил его, и ошибка исчезла

просто мне потребовалось некоторое время, чтобы понять, что xcodebuild был плохим - я посмотрел на сообщения журнала и вручную запустил команду xcodebuild с помощью React native параметры-нет вывода любого рода. Никаких сообщений о сборке, никаких сообщений об ошибках, ничего. Побежал без парамов-то же самое....

оставив это здесь, так как еще одна вещь, чтобы проверить, если это сообщение об ошибке появляется. Ваш xcodebuild работает?

основная причина заключается в том, что развертывание порта не является бесплатным. Либо вы перезагрузите устройство и получите все порты бесплатно, либо запустите $ lsof -i :8081 и найти процесс, который занял порт 8081. Убить процесс, который использует порт 8081 работает $ kill -9 {process_which_is_running_under_8081}

сначала запустите свой проект из Xcode, а затем попробуйте запустить из командной строки. Это было проблемой для меня.

MAC решение для людей, сталкивающихся с этой проблемой с react-native версии 0.45.1

после прохождения многих решений это то, что я скомпилировал его в

  1. в первую очередь важно убедиться, что у вас есть последняя версия Xcode работает на вашем Mac.

  2. проверьте, содержит ли имя проекта пробелы. Если это так любезно удалить пробелы.

  3. многие пользователи, включая меня нашли эта проблема из-за последней выпущенной версии react-native 0.45.1 поэтому, если вы используете эту версию, вы можете перейти на более стабильную версию (т. е. 0.44.0), используя инструкцию ниже

    чтобы проверить текущий тип версии react-native

    react-native-v

    3.1 Если вы создали свой проект.

    Go to your current Project directory through terminal and type
    

    npm install react-native-git-upgrade (если уже установлен, пропустите это шаг)

    react-native-git-upgrade 0.44.0

    понижение до этой версии решило мою проблему.

    3.2 если вы собираетесь создать новый проект, попробуйте использовать строку ниже

    react-native init ProjectName-v 0.44.0

    замените имя проекта на имя вашего проекта.

    после установки проверьте текущую версию react-native и версию, указанную при установке, если оба совпадают. Если тогда не попробовать шаг 3.1 после создания проекта.

Если все та же проблема существует, пожалуйста, прокомментируйте ниже, чтобы я мог попытаться найти еще несколько обходных путей.