Печать: запись, «: CFBundleIdentifier», не существует

97

Когда я запускаю react-native run-ios, сборка завершается успешно, но я получаю ошибку ниже. Я проверил все это место, но ничего не работает. Использование sudo перед командой не помогает. Я использую Xcode 7.3, response-native-cli: 0.2.0, response-native: 0.24.1, node v5.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)
  • 0
    И существует ли идентификатор пакета в файле? Я предполагаю, что нет, поэтому вопрос в том, «почему это не записывается в файл».
  • 0
    Это не очень помогает. Можете ли вы уточнить?
Показать ещё 4 комментария
Теги:
react-native

39 ответов

10
Лучший ответ

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

  • 2
    Но что, если вы хотите запустить свой проект в режиме выпуска?
  • 1
    Проверьте github.com/facebook/react-native/issues/… или medium.com/@alberto.schiabel/…
Показать ещё 3 комментария
92

Открыть проект в Xcode

Если Xcode> 9 запускает командную react-native upgrade (это перезаписывает все ваши конфигурации iOS, используйте с осторожностью !)

затем

1.Go to File → Настройки проекта

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

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

4. Измените "Build/Products" на "build/Build/Products"

Изображение 2702

5. щелкнуть, сделать

  • 1
    Это работало для меня на xcode 8.2, исправило мою проблему, спасибо!
  • 1
    больше не работает в xcode 9.0 :(
Показать ещё 10 комментариев
60

Это может произойти, если вам не хватает файла config.h,

Для файла конфигурации config.h,

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

2) Откройте терминал, перейдите в корневую папку проекта и выполните:

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

3) Запустите скрипт configure:

./configure

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

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

  • 0
    Спасибо!! это сэкономило мое время.
  • 0
    Это сработало для меня.
Показать ещё 8 комментариев
31

Update React, используя обновление на основе react-native upgrade сделал это для меня.

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

  • 26
    перезапись всех файлов iOS перезапишет любые конфигурации, которые вы внесли в свой проект. лол. использовать на свой страх и риск отказ от ответственности является наименьшим, что вы могли бы сделать.
  • 0
    Было бы полезно, если бы кто-то мог объяснить, что означает «все ваши конфигурации iOS».
15

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

Откройте Xcode 10, "Файл"> "Настройки проекта"> "Система сборки"> и переключитесь в выпадающий список "Старая система сборки".

Изображение 2703

  • 0
    Спасибо .. это сработало для меня.
  • 0
    Это сработало для меня.
Показать ещё 1 комментарий
9

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

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

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

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

3) выполните команду реагировать на обновление

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

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

6) выберите custom > Относительно рабочей области

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

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

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

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

  • 0
    Хорошая работа, я решил свою проблему на реагировать родной 0.51
  • 20
    у меня не работает до сих пор у меня есть эта ошибка: запись, ": CFBundleIdentifier", не существует
Показать ещё 1 комментарий
8

Для [email protected] следующее трюк для меня:

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

  • перейдите в меню "Файл" > "Настройки проекта" > "Дополнительно"

  • custom > Относительно рабочей области

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

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

3) Закройте реактивный упаковщик

4) Запустите react-native run-ios снова

  • 0
    Также работает на: «реагировать»: «16.2.0», «реагировать-нативный»: «0.52.0»,
  • 0
    Это решило проблему для меня после добавления зависимостей через Pods в часть iOS нашего проекта RN. За исключением: я сделал это изменение в конфигурации .xcworkspace .
8

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

  • 0
    Это было единственное, что исправило это для меня.
  • 0
    работал для меня также (Xcode 9.4.1)
Показать ещё 1 комментарий
7

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

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

  • 0
    Спаситель жизни. Это была действительно другая проблема. Моя схема была переименована, и проблема была решена.
6

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

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

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

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

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

  • 0
    Если у меня есть эта ошибка, как я могу это исправить?
3

Я исправил это, удалив /build/ и снова react-native run-ios

  • 0
    не работает для меня
  • 0
    @EranOr вы видите Provide a valid path to the desired application bundle. пакету Provide a valid path to the desired application bundle. в вашей консоли? Попробуйте следующий файл настроек xcode file => project settings, build system: legacy, derived data: project-relative, DerivedData in the input => advanced, custom, relative to workspace, build/Build/ in the first 2 inputs
Показать ещё 1 комментарий
3

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

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

  • 0
    Так как же обойти это?
  • 0
    @Isaac кеш-кеш и установка с использованием либо ссылки cocoapods / Reaction-native, в зависимости от того, как настроен ваш проект
2

Я перепробовал все эти решения, но одно из них сработало:

  1. запустить react-native upgrade
  2. открыть xcode
  3. запустить приложение в xCode
  4. работает отлично!
  • 0
    спасибо, Элай, я решил эту проблему, просто запустив «реакцию на обновление»
2

Вы можете выполнить следующие шаги для устранения этой ошибки:

Шаг 1

Open terminal

Шаг 2

cd node_modules/react-native/third-party

Шаг 3

ls

Copy or identify glog-{version}

Шаг 4

cd ../../../

Шаг 5

cd node_modules/react-native/third-party/glog-{version}

Шаг 6

./configure

Надеюсь, это сработает !!!

1

Использование этой версии для меня работает с xcode 10.1

"react": "16.6.0-alpha.8af6728",
"react-native": "0.57.4"
1

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

Сначала я rm -rf ios ios folder rm -rf ios затем rm -rf ios react-native upgrade

1

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

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

Наконец он работает.

  • Mac OS High Sierra 10.13.4
  • Xcode 9.3
  • НПМ 5.8.0
  • Узел 8.11.1
  • RN 0,55,2
1

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

1

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

Если вы запустите react-native run-ios без каких-либо конкретных параметров, в моем случае action-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", проблема решена.

  • 0
    Отлично! Спасибо!
1

0,44 нормально работать, но 0.45 не может, может быть, проблема версии Я решил это с помощью следующей команды: rninit init TaxiApp --source [email protected];

1

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

1

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

<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
  • 1
    Да, я проверял это. Ошибка была на самом деле, что мой код был в режиме выпуска вместо режима отладки.
0

Для меня это были ios зависимости, управляемые cocoapods.

Пришлось сделать это:

$ cd ToProject/ios

$ pod install

$ react-native run-ios

Это сработало для меня

https://shift.infinite.red/beginner-s-guide-to-using-cocoapods-with-react-native-46cb4d372995

PS: пытался выяснить работу, проделанную кем-то другим

  • 0
    Запуск pod install сказал: [!] В каталоге проекта не найдено `Podfile '.
  • 0
    @MohammadMirzaeyan предположение, что вы сделали pod init и у вас есть действующий Podfile. Пожалуйста, не отрицайте, если у вас недостаточно знаний для противодействия вашим претензиям. Поскольку это был чужой проект, как я уже говорил, у меня уже был PodFile. Я полностью удалил настройки для таких людей, как ты.
0

Все эти варианты решения не спомогли мне. Я только что создал проект рН 0.58.5. И по сравнению с моим проектом. Я увидел, что нет JavaScriptCore.framework в Build Phasess > Link Binary With Libraries. После перетаскивания JavaScriptCore успешно работала встроенная сборка run-ios.

Расположение JavaScriptCore.framework: ‎⁨Macintosh HD⁩ ▸ ⁨Applications⁩ ▸ ⁨Xcode⁩ ▸ ⁨Contents⁩ ▸ ⁨Developer⁩ ▸ ⁨Platforms⁩ ▸ ⁨iPhoneOS.platform⁩ ▸ ⁨Developer⁩ ▸ ⁨SDKs⁩ ▸ ⁨iPhoneOS.sdk⁩ ▸ ⁨System⁩ ▸ ⁨Library⁩ ▸ ⁨Frameworks⁩

Изображение 2704

0

Просто откройте проект в приложении xcode, и он автоматически выполнит все операции по импорту и разрешит проблемы. Работал для меня, Xcode 10+

Редактировать 1: Откройте папку iOS вашего приложения, а не глобальную папку.

  • 0
    нет, это не работает, с RN 0.57 и Xcode 10.1, для совершенно нового приложения собственного родства init
0

Я на XCode 10 с RN версии 0.5.7, я пробовал практически все решения и ничего не работал.

Потеряв много времени, наконец, как я получил его к работе, выполняя следующие

  1. Установите предыдущую версию реакции-native, выполнив react-native init project --version [email protected]
  2. Откройте project/ios/project.xcodeproj и выберите Debug для построения командной строки
  3. Обязательно выберите правильный сертификат разработки
  4. Запустите react-native run-ios снова, на этот раз он должен работать.
0

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

0

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

0

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

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

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

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

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

0

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

После опроса некоторых из ответов на этот вопрос, в конце концов, работали:

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

0

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

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

0

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

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

Теперь запустите команду реакция-native run-ios

0

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

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

  • Прежде всего, важно, чтобы на вашем Mac была установлена ​​последняя версия Xcode.

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

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

    Чтобы проверить свой текущий тип родной версии

    response-native -v

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

    Go to your current Project directory through terminal and type
    

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

    response-native- git -upprade 0.44.0

    Переход на эту версию решил мою проблему.

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

    response-native init Имя_проекта -v 0.44.0

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

    После установки проверьте текущую версию реакции и версию, указанную во время установки, если они совпадают. Если нет, попробуйте выполнить шаг 3.1 после создания проекта.

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

0

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

0

Эта работа для меня Нажмите на проект RCTWebSocket в своем навигаторе и удалите флаги в настройках сборки > настраиваемые флаги компилятора Изображение 2705

-1

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

  1. rm -rf node_modules
  2. обновление на основе реакции
  3. Установка npm
  4. реагировать-native run-ios

РЕШЕНИЕ вопроса, этот поток помог мне разобраться в этом вопросе.

-1

ИСПРАВЛЕНИЕ ДЛЯ OSX EL CAPITAN

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

yarn upgrade [email protected]

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

-1

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

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

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

  • 0
    Просто переустановка узла не является решением

Ещё вопросы

Сообщество Overcoder
Наверх
Меню