Cordova-plugin-firebasex: Не удалось скомпилировать на IOS - отсутствует InAppMessagingDisplayResources.bundle

Созданный на 4 мар. 2020  ·  71Комментарии  ·  Источник: dpa99c/cordova-plugin-firebasex

Отчет об ошибке

Текущее поведение:

При создании сборки prod (Ionic) происходит сбой:

error: Resource "/Users/rattkin/Library/Developer/Xcode/DerivedData/driverhood-fdggvwggwpvrhxbzlvxxdbhztdnu/Build/Products/Debug-iphonesimulator/FirebaseInAppMessaging/InAppMessagingDisplayResources.bundle" not found. Run 'pod install' to update the copy resources script.

The following build commands failed:
    PhaseScriptExecution [CP]\ Copy\ Pods\ Resources /Users/rattkin/Library/Developer/Xcode/DerivedData/driverhood-fdggvwggwpvrhxbzlvxxdbhztdnu/Build/Intermediates.noindex/driverhood.build/Debug-iphonesimulator/driverhood.build/Script-53D89128D701315A18804F16.sh

xcodebuild: Command failed with exit code 65

Я сделал pod install на платформах / iOS, но это ничего не изменило. Также сделал pod repo update .

Похоже, проблема с Firebase/InAppMessaging pod?

Ожидаемое поведение:
Он должен правильно скомпилироваться.

Действия по воспроизведению:
ionic cordova build ios --prod

Информация об окружающей среде

  • Версия Cordova CLI
    9.0.0 ([email protected])
  • Версия платформы Кордова
Installed platforms:
  android 8.1.0
  browser 6.0.0
  ios 5.1.1
Available platforms: 
  electron ^1.0.0
  osx ^5.0.0
  windows ^7.0.0
  • Плагины и версии, установленные в проекте (включая этот плагин)
call-number 0.0.2 "Cordova Call Number Plugin"
cordova-plugin-actionsheet 2.3.3 "ActionSheet"
cordova-plugin-androidx 1.0.2 "cordova-plugin-androidx"
cordova-plugin-androidx-adapter 1.1.0 "cordova-plugin-androidx-adapter"
cordova-plugin-camera 4.1.0 "Camera"
cordova-plugin-device 2.0.3 "Device"
cordova-plugin-dialogs 2.0.2 "Notification"
cordova-plugin-facebook4 6.3.0 "Facebook Connect"
cordova-plugin-firebasex 8.1.1 "Google Firebase Plugin"
cordova-plugin-geolocation 4.0.2 "Geolocation"
cordova-plugin-googleplus 8.4.0 "Google SignIn"
cordova-plugin-inappbrowser 3.2.0 "InAppBrowser"
cordova-plugin-ionic-webview 4.1.3 "cordova-plugin-ionic-webview"
cordova-plugin-market 1.2.0 "Market"
cordova-plugin-network-information 2.0.2 "Network Information"
cordova-plugin-sign-in-with-apple 0.0.1 "cordova-plugin-sign-in-with-apple"
cordova-plugin-splashscreen 5.0.3 "Splashscreen"
cordova-plugin-statusbar 2.4.3 "StatusBar"
cordova-plugin-whitelist 1.3.4 "Whitelist"
cordova-plugin-x-socialsharing 5.6.4 "SocialSharing"
es6-promise-plugin 4.2.2 "Promise"
ionic-plugin-deeplinks 1.0.20 "Ionic Deeplink Plugin"
uk.co.workingedge.phonegap.plugin.launchnavigator 5.0.4 "Launch Navigator"
  • ОС и версия машины разработчика, например
    Mac OS 10.15.3 Каталина

_ Проблема сборки iOS: _

  • Версия Node JS
    v10.18.1
  • Версия XCode
    11.3.1
Firebase SDK bug build issue ios

Самый полезный комментарий

Итак, как уже говорилось, теперь есть ветка cli_build, из которой были удалены проблемные компоненты Firebase SDK. Вы можете установить прямо из ветки или связанного параллельного выпуска NPM:

cordova plugin add [email protected]

Теперь это описано в основной документации, чтобы помочь всем, кто не знает о проблемах сборки CLI.

Существует соответствующий выпуск патча из основной ветки, который повторно добавляет компоненты Inapp Messaging и предназначен для сборки из Xcode до тех пор, пока новая версия cordova-ios исправит проблемы сборки CLI:

    cordova plugin add [email protected]

Все 71 Комментарий

Работает, когда я возвращаю версию cordova-plugin-firebasex к версии 8.0.1. Поддержка обмена сообщениями в приложении в последних выпусках должна была что-то сломать.

Также возникает та же проблема. Пытался запустить pod repo update и pod install на этапе подготовки cocoapods моей сборки CI, но безрезультатно:

      - run:
          name: Ionic - Prepare Cordova iOS & CocoaPods Dependencies
          command: |
            ionic cordova prepare ios --confirm --no-build
            cd platforms/ios/
            pod dependencies
            ionic cordova plugin rm cordova-plugin-firebasex
            ionic cordova plugin add cordova-plugin-firebasex
            ionic cordova prepare ios --confirm --no-build
            pod repo update
            pod install

Как вы можете видеть выше, заставить этот плагин работать - это большая рутина. pod dependencies CocoaPods не может быть запущен, если плагин не присутствует, однако первоначальная установка плагина не удалась, потому что CocoaPods не установлен должным образом. Таким образом, сначала нужно подготовить платформу Cordova и установить плагин (в состоянии сбоя), установить зависимости pod, затем удалить плагин, добавить его обратно, заново подготовить платформу, и теперь кажется, также pod repo update и затем запустите pod install ...

Должен быть более простой способ заставить этот плагин работать ... Оо

В полном отчете об ошибках:

PhaseScriptExecution [CP]\ Copy\ Pods\ Resources /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Script-4C9A577E4E098CD9C9C43025.sh (in target 'WICShopper' from project 'WICShopper')
    cd /Users/distiller/project/platforms/ios
    /bin/sh -c /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Script-4C9A577E4E098CD9C9C43025.sh
error: Resource "/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Products/Release-iphonesimulator/FirebaseInAppMessaging/InAppMessagingDisplayResources.bundle" not found. Run 'pod install' to update the copy resources script.

Выполнение рекомендованной команды pod install , похоже, не дает никакого эффекта. Я искал указанный файл .bundle и нигде не могу его найти. Плагин, похоже, сломался в последней версии.

Пакет находится в каталоге platform / ios / build, но он «плоский», а не в подкаталоге FirebaseMessaging или что-то в этом роде. Это похоже на то, что либо у ссылающегося скрипта неверный путь, либо пакет не попадает в нужное место.

Я попытался вернуться к версии 8.0.1, но у меня все еще возникают проблемы со сборкой. Текущая ошибка сборки такова, которая возникает независимо от того, запускаю я pod install или нет:

PhaseScriptExecution [CP]\ Check\ Pods\ Manifest.lock /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Script-6CDB74AC9D91AFB94F3486DA.sh (in target 'WICShopper' from project 'WICShopper')
    cd /Users/distiller/project/platforms/ios
    /bin/sh -c /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Script-6CDB74AC9D91AFB94F3486DA.sh
diff: /Podfile.lock: No such file or directory
diff: /Manifest.lock: No such file or directory
error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.

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

Я полагаю, очистить и сбросить весь проект?

Каждая сборка в нашем CI - это с чистого листа. Мы вытаскиваем репо, затем запускаем необходимые команды ionic / cordova для подготовки, установки плагинов и т. Д. С нуля. Мы не проверяем каталоги наших платформ или плагинов (одна из причин, по которой мы застряли с Cordova, а не перешли на Capacitor, поскольку Capacitor обычно требует, чтобы вы возились с низкоуровневым собственным кодом, и вам приходится его проверять все в ... блех .: P)

Вы используете современную систему сборки для XCode или устаревшую систему сборки? В вашем проекте все еще есть cordova-plugin-cocoapodsx? Некоторое время назад его уронили и, возможно, он с чем-то конфликтует, если он еще остался.

Это относительно новый проект, начатый в конце прошлого года с Ionic 4 и Cordova 9. Он использует cocoapodsx.

Проект работал нормально до прошлой недели, потом внезапно сломался. Мы занимались разработкой и развертыванием сборок в течение нескольких месяцев, может быть, до середины недели на прошлой неделе. Единственное изменение, похоже, касается FirebaseX.

Я попробовал несколько предыдущих версий плагина. Я восстановил наш сценарий сборки CI до того, каким он был раньше, прежде чем начал возиться с ним, чтобы попытаться решить эту проблему. Изначально мы начали с версии 7.0.1 этого плагина еще в ноябре прошлого года. Я пробовал 7.0.1, 7.0.2, 8.0.0 и 8.0.1. Все эти версии приводят к одной и той же ошибке:

CompileC /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Objects-normal/x86_64/FirebasePlugin.o /Users/distiller/project/platforms/ios/WICShopper/Plugins/cordova-plugin-firebasex/FirebasePlugin.m normal x86_64 objective-c com.apple.compilers.llvm.clang.1_0.compiler (in target 'WICShopper' from project 'WICShopper')
    cd /Users/distiller/project/platforms/ios
    export LANG=en_US.US-ASCII
    /Applications/Xcode-11.3.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -x objective-c -target x86_64-apple-ios11.0-simulator -fmessage-length=0 -fdiagnostics-show-note-include-stack -fmacro-backtrace-limit=0 -std=c99 -fobjc-arc -fmodules -gmodules -fmodules-cache-path=/Users/distiller/Library/Developer/Xcode/DerivedData/ModuleCache.noindex -fmodules-prune-interval=86400 -fmodules-prune-after=345600 -fbuild-session-file=/Users/distiller/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/Session.modulevalidation -fmodules-validate-once-per-build-session -Wno-trigraphs -fpascal-strings -Os -Wno-missing-field-initializers -Wno-missing-prototypes -Wunreachable-code -Wno-implicit-atomic-properties -Wno-objc-interface-ivars -Wno-arc-repeated-use-of-weak -Wimplicit-retain-self -Wduplicate-method-match -Wno-missing-braces -Wparentheses -Wswitch -Wunused-function -Wno-unused-label -Wno-unused-parameter -Wunused-variable -Wunused-value -Wempty-body -Wuninitialized -Wno-unknown-pragmas -Wno-shadow -Wno-four-char-constants -Wno-conversion -Wconstant-conversion -Wint-conversion -Wbool-conversion -Wenum-conversion -Wno-float-conversion -Wnon-literal-null-conversion -Wobjc-literal-conversion -Wshorten-64-to-32 -Wpointer-sign -Wno-newline-eof -Wno-selector -Wno-strict-selector-match -Wundeclared-selector -Wdeprecated-implementations -DOBJC_OLD_DISPATCH_PROTOTYPES=0 -isysroot /Applications/Xcode-11.3.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator13.2.sdk -fasm-blocks -fstrict-aliasing -Wprotocol -Wdeprecated-declarations -g -fvisibility=hidden -Wno-sign-conversion -Winfinite-recursion -Wcomma -Wblock-capture-autoreleasing -Wstrict-prototypes -Wno-semicolon-before-method-body -fobjc-abi-version=2 -fobjc-legacy-dispatch -iquote /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/WICShopper-generated-files.hmap -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/WICShopper-own-target-headers.hmap -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/WICShopper-all-target-headers.hmap -iquote /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/WICShopper-project-headers.hmap -I/Users/distiller/project/platforms/ios/build/emulator/include -I/Users/distiller/project/platforms/ios/build/emulator/usr/local/lib/include -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/UninstalledProducts/include -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/UninstalledProducts/iphonesimulator/include -I/Users/distiller/project/platforms/ios/build/emulator -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/DerivedSources-normal/x86_64 -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/DerivedSources/x86_64 -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/DerivedSources -F/Users/distiller/project/platforms/ios/build/emulator -include /Users/distiller/project/platforms/ios/build/sharedpch/SharedPrecompiledHeaders/749132040139485224/WICShopper-Prefix.pch -MMD -MT dependencies -MF /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Objects-normal/x86_64/FirebasePlugin.d --serialize-diagnostics /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Objects-normal/x86_64/FirebasePlugin.dia -c /Users/distiller/project/platforms/ios/WICShopper/Plugins/cordova-plugin-firebasex/FirebasePlugin.m -o /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Objects-normal/x86_64/FirebasePlugin.o
/Users/distiller/project/platforms/ios/WICShopper/Plugins/cordova-plugin-firebasex/FirebasePlugin.m:4:9: fatal error: 'Firebase.h' file not found
#import "Firebase.h"
        ^~~~~~~~~~~~

Если я запускаю pod install , я получаю сообщение об ошибке, о котором сообщал ранее, об отсутствии Podfile.lock и Manifest.lock.

Здесь мы полностью мертвы в воде.

После расследования выяснилось, что эта ошибка возникает только при сборке из CLI (с помощью инструмента xcodebuild ) - сборка из Xcode работает нормально (следовательно, поскольку я всегда использую Xcode, эта проблема была пропущена).
Для сравнения: (неудачный) вывод консоли сборки CLI) и (успешный) вывод консоли сборки Xcode .

Что касается того, почему должна возникнуть эта ошибка, я в настоящее время понятия не имею.
Компонент Inapp Messaging был добавлен путем слияния PR # 312, и на первый взгляд это простое дополнение - просто добавление компонента Firebase SDK через его ссылку на Cocoapods без связанных изменений кода плагина.
Сборка CLI завершается неудачно, потому что InAppMessagingDisplayResources.bundle не найден. Похоже, это неявный компонент Firebase SDK (по сравнению с тем, что явно указано в этом плагине).
Следовательно, похоже, что с помощью плагина мало что можно сделать, чтобы решить эту проблему, за исключением удаления компонента Inapp Messaging из Firebase SDK из этого плагина, который, конечно же, потеряет связанные функции.

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

Я попытался обновить podspecs для ссылки на последний выпуск v6.18.0 Firebase SDK для iOS, но проблема все еще возникает при сборке из интерфейса командной строки 😞

У нас нет возможности строить с XCode в нашей сборке CI (непрерывная интеграция). Это должна быть командная строка. Так что это не может быть рекомендуемым решением. И старые версии, и текущая в настоящее время не работают. Я не знаю, связано ли это с обновлением Firebase SDK, которое сломало все версии до 8.1.1, или чем-то еще ... но мы используем Firebase Analytics и Cloud Messaging, и в настоящее время наша разработка остановлена ​​из-за изменений Вот.

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

Я попытался обновить podspecs для ссылки на последний выпуск v6.18.0 Firebase SDK для iOS, но проблема все еще возникает при сборке из интерфейса командной строки 😞

Можно ли сослаться на предыдущую версию? Есть ли шанс получить версию 8.0.2, которая ссылается на ту же версию SDK, которая работала до 8.1.1?

v8.0.1 отлично собирается из интерфейса командной строки - см. этот вывод консоли из моей сборки.

Проблема с сборками интерфейса командной строки в iOS была вызвана добавлением компонента Inapp Messaging.

ОК. Мне пришлось найти и обновить все ссылки на версии для плагина firebasex и установить для них значение 8.0.1, а также явно указать 8.0.1, когда я переустанавливаю плагин после его удаления (поскольку первая установка плагина не удалась из-за того, что модули не были установлен, но модули не могут быть установлены, пока не будет установлен плагин ...), перед обновлением модулей, чтобы все работало. Когда все номера версий были явно настроены на 8.0.1 во всех местах, сборка, наконец, начала работать.

TL; DR: при сборке с использованием интерфейса командной строки закрепите версию 8.0.1 до тех пор, пока не будет выпущен патч, чтобы исправить эту проблему с помощью 8.1.x
Если вы строите с помощью Xcode, вы должны быть в порядке, обновившись до последней версии v8.1.1

Похоже, эта проблема не связана с этим плагином или конкретной версией компонента Inapp Messaging SDK, на который он ссылается:
Я могу воспроизвести проблему с cordova-plugin-firebase-inappmessaging (которая запускает Firebase / InAppMessagingDisplay v 6.3.0 ), используя следующие команды:

cordova create test && cd test
cordova plugin add cordova-plugin-firebase-inappmessaging
cordova platform add ios
cordova build ios

который (как демонстрирует этот вывод консоли ) завершается с той же ошибкой:

error: Resource "/Users/dave/Library/Developer/Xcode/DerivedData/HelloCordova-gvppvcmxenjfsnfvmssmvbuwhnay/Build/Products/Debug-iphonesimulator/FirebaseInAppMessagingDisplay/InAppMessagingDisplayResources.bundle" not found. Run 'pod install' to update the copy resources script.

как и с этим плагином, сборка в Xcode прошла успешно

Я закрепил версию 8.0.1, но у меня все еще есть ошибки - проблема в том, что FirebaseCore.h не найден (как указано в №330)
Похоже, это проблема с заголовками или чем-то подобным. Я выполняю следующую команду:

xcodebuild -j "$(sysctl -n hw.ncpu)" \
           -project "platforms/ios/app.xcodeproj" \
           -scheme "app-scheme" \
           -configuration Release clean archive \
           -archivePath "platforms/ios/app.xcarchive" \
           PROVISIONING_PROFILE="$uuid_dbg" \
           CODE_SIGN_IDENTITY="$identity_dbg"

Любой намек на то, как я могу решить эту проблему?

@ Javinator9889 похоже, что вы вызываете xcodebuild напрямую?

Вместо того, чтобы использовать Cordova CLI, который генерирует что-то вроде:

xcodebuild -workspace FirebaseTest.xcworkspace -scheme FirebaseTest -configuration Debug -sdk iphonesimulator -destination platform=iOS Simulator,name=iPhone 11 Pro Max build CONFIGURATION_BUILD_DIR=/Users/dave/Documents/projects/@scratch/cordova-plugin-firebasex-test/platforms/ios/build/emulator SHARED_PRECOMPS_DIR=/Users/dave/Documents/projects/@scratch/cordova-plugin-firebasex-test/platforms/ios/build/sharedpch

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

Все, что я могу сказать, это то, что этот примерный проект отлично работает с v8.0.1 через Cordova CLI и отлично работает с v8.1.1 через Xcode, поэтому используйте его в качестве рабочего справочника.

@ dpa99c Я посмотрю на использование Cordova CLI - заранее спасибо :)

@ dpa99c Я впервые

Вы не возражаете, если я попрошу вас рассказать мне, как создать xcarchive с помощью Cordova CLI?

cordova build ios --device --release
stat platforms/ios/<YourAppName>.xcarchive

@ dpa99c Это сработало 😮

Большое спасибо <3

Простите за тыкание! Я считаю, что мы можем обойти это, используя XCode, но планируется ли исправление этой проблемы? Сборка с XCode требует большего, чем использование CLI

@nnimis , если вы будете следовать разговор, вы можете увидеть , что вы можете скомпилировать с помощью скрепляя firebasex плагин _v8.0.1_

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

Думаю, нам нужно дождаться либо новой версии Firebase SDK, либо новой версии cordova / cordova-ios. Поддержка Cocoapods все еще немного шаткая.

На данном этапе я понятия не имею, что вызывает проблему, поэтому никаких исправлений не планируется, пока я не смогу определить причину - как показано здесь, эта ошибка не специфична для этого плагина.
Любая помощь в поиске причины ускорит решение проблемы.

Спасибо всем, без особой спешки, просто хотел знать, планируется ли что-то исправить в любой момент.
@ Javinator9889, в моем случае раннюю версию не сработал, извините

@nnimis какая у вас ошибка?

Конкретная причина этой проблемы описана в https://github.com/apache/cordova-ios/issues/659 :

Аргумент CONFIGURATION_BUILD_DIR установленный Cordova, переопределяет значение, зависящее от модуля, необходимое для успешной сборки, что приводит к сбою, когда модули содержат определенную структуру папок, такую ​​как модуль обмена сообщениями Firebase Inapp.

Так, например, запуск cordova build ios в моей среде запускает команду xcodebuild из platforms/ios/ со следующими аргументами:

xcodebuild -workspace FirebaseTest.xcworkspace -scheme FirebaseTest -configuration Debug -sdk iphonesimulator -destination platform="iOS Simulator,name=iPhone 11 Pro Max" build CONFIGURATION_BUILD_DIR=/Users/dave/Documents/projects/cordova-plugin-firebasex-test/platforms/ios/build/emulator SHARED_PRECOMPS_DIR=/Users/dave/Documents/projects/cordova-plugin-firebasex-test/platforms/ios/build/sharedpch

Если я вручную запустил эту команду, но удалю аргумент CONFIGURATION_BUILD_DIR , сборка завершится успешно:

xcodebuild -workspace FirebaseTest.xcworkspace -scheme FirebaseTest -configuration Debug -sdk iphonesimulator -destination platform="iOS Simulator,name=iPhone 11 Pro Max" build SHARED_PRECOMPS_DIR=/Users/dave/Documents/projects/cordova-plugin-firebasex-test/platforms/ios/build/sharedpch

Так что это ошибка в текущих версиях Cordova в том, как она обрабатывает эти модули.
В настоящее время нет способа указать Cordova CLI опустить аргумент CONFIGURATION_BUILD_DIR , поэтому единственные варианты - это построить непосредственно в Xcode или вызвать команду xcodebuild вручную (захватить ее из ошибочного вывода cordova build ios ) и опустить аргумент CONFIGURATION_BUILD_DIR

Спасибо за это подробное расследование, очень признательны.

8.01 исправляет это при собственном запуске (Ionic 3) и значительно сокращает время сборки с 8.1.0 (более 12 минут) до 1-2 минут.

Была опубликована версия 9.0.0, которая решает эту проблему путем удаления компонентов Inapp Messaging SDK из этого подключаемого модуля.

К сожалению, не сильно помогло. Ошибка теперь (в 9.0.0) изменилась на:

error: Resource "Build/Products/Debug-iphonesimulator/GoogleTagManager/TagManagerResources.bundle" not found. Run 'pod install' to update the copy resources script.

Похоже на системную проблему.

Блин, я забыл, что компонент GoogleTagManager iOS был добавлен PR # 318.

Это действительно системная проблема с платформой cordova-ios при добавлении поддержки Cocoapods; система сборки CLI не полностью поддерживает конфигурацию сборки, необходимую для некоторых таких модулей (как указано в https://github.com/apache/cordova-ios/issues/659).

Я (и другие) сейчас использую GTM через этот плагин в производственной среде, поэтому удаление этого компонента и для iOS (хотя он устраняет проблему сборки CLI) не вариант.

Мне нужно переосмыслить свою стратегию, чтобы справиться с этим: сборка в Xcode отлично работает, когда включены компоненты SDK GTM и Inapp Messaging - проблема только в сборках Cordova CLI, и это связано с проблемой в Cordova CLI процесс сборки на iOS.

Поэтому я предлагаю создать новую ветку этого репозитория - cli_build - которая специально удаляет компоненты SDK GTM и Inapp Messaging для обеих платформ (даже несмотря на то, что проблема в iOS и сборка Android с интерфейсом командной строки нормально, я не не хочу создавать межплатформенные несоответствия). В остальном эта ветка будет такой же, как и основная, и будет поддерживаться параллельно, но выпуски npm не будут входить в основную ветвь, поэтому будут содержать компоненты SDK GTM и Inapp Messaging.
Поэтому, если вы хотите построить с помощью Cordova CLI, вам нужно будет ссылаться на ветку прямо в своем проекте:

cordova plugin add https://github.com/dpa99c/cordova-plugin-firebasex#cli_build

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

Я считаю, что это лучший способ справиться с этой проблемой - в конце концов, это проблема, вызванная процессом сборки Cordova CLI, и сборка с помощью Xcode работает нормально, поэтому я не хочу ограничивать функциональность плагина для тех, кто может собирать из Xcode для тех, кто не может.

Это кажется разумным решением, спасибо. Надеюсь, в скором времени cordova-ios сможет выпустить новую версию, потому что в последнее время на стороне iOS накапливаются проблемы.

@ dpa99c Есть ли шанс опубликовать версии cli в теге npm? Я не знаю, насколько гибкие теги npm ... Я сам использовал альфа и бета, но я думаю, что технически они могут быть любыми. Было бы здорово, если бы вы все еще могли опубликовать cli-версию для этого модуля в официальном npm, только под другим тегом. Мы надеемся, что это позволит вам использовать ту же версию, возможно, с альтернативным суффиксом (например, 8.2.0-cli против 8.2.0), опубликовать cli-версию под тегом cli в npm, а затем мы можем просто изменить используемую версию. в нашем package.json добавить -cli в конец версии.

@jrista хорошая идея - я

Итак, как уже говорилось, теперь есть ветка cli_build, из которой были удалены проблемные компоненты Firebase SDK. Вы можете установить прямо из ветки или связанного параллельного выпуска NPM:

cordova plugin add [email protected]

Теперь это описано в основной документации, чтобы помочь всем, кто не знает о проблемах сборки CLI.

Существует соответствующий выпуск патча из основной ветки, который повторно добавляет компоненты Inapp Messaging и предназначен для сборки из Xcode до тех пор, пока новая версия cordova-ios исправит проблемы сборки CLI:

    cordova plugin add [email protected]

Спасибо, @ dpa99c! Рад, что суффикс альтернативной версии сработал! Это потрясающе!

@ dpa99c Я добавил cordova plugin add [email protected] в свой проект, и он сработал при первой сборке для ios. Однако, если я запускаю команду сборки ionic cordova build ios , я снова получаю сообщение об ошибке, что InAppMessagingDisplayResources.bundle "не найден".

@ PatrickJung94 [email protected] не содержит никаких ссылок на компонент Inapp Messaging SDK, поэтому я предполагаю, что у вас есть ссылка на версию, отличную от CLI, где-то в вашей конфигурации, которая вызывает эту версию вместо этого.

Проверьте файлы конфигурации вашего проекта, а также plugins/cordova-plugin-firebasex/plugin.xml чтобы узнать, какая версия действительно присутствует в вашем проекте.

@ dpa99c Я изменил <plugin id="cordova-plugin-firebasex" version="9.0.1" на <plugin id="cordova-plugin-firebasex" version="9.0.1-cli" в plugins/cordova-plugin-firebasex/plugin.xml и все еще получаю сообщение об ошибке после сборки. Могу ли я найти еще одну ссылку?

Даже при удалении platforms/ios , plugins и node_modules и переустановке с помощью npm install и повторном построении с помощью ionic cordova build ios проблема сохраняется.

@ PatrickJung94 также проверьте package.json . Я бы выполнил рекурсивный текстовый поиск всех файлов проекта, чтобы убедиться, что вы ничего не пропустили.

@ dpa99c package.json имеет следующую запись: "cordova-plugin-firebasex": "^9.0.1-cli" хотя в package-lock.json у меня есть:

"cordova-plugin-firebasex": {
      "version": "9.0.1",
      "resolved": "https://registry.npmjs.org/cordova-plugin-firebasex/-/cordova-plugin-firebasex-9.0.1.tgz",
      "integrity": "sha512-VUFJjd7PLeeHQ6ZIbtjxGhTCUtKmWB4vhzl8QaJ0rUcr6rwhjE8FYg6n68MODaKlbSU1emlB2QcV8vvL354UCQ==",
      "requires": {
        "plist": "^3.0.1",
        "xcode": "^2.0.0",
        "xml-js": "^1.6.11"
      }
    }

Удаление файла блокировки и повторный запуск npm install не обновляют вновь созданный файл блокировки.

@ PatrickJung94 , попробуйте запустить cmd ionic cordova plugin rm cordova-plugin-firebasex --force

Затем убедитесь, что нет папки "your_project_name / plugin / cordova-plugin-firebasex". Если все еще существует, я просто удалил его вручную.

Затем запустите ionic cordova plugin add [email protected] .

После этого запустите cmd npm install @ionic-native/firebase-x .

После этого проверьте с помощью cmd ionic cordova plugin . Он должен перечислить
cordova-plugin-firebasex 9.0.1-cli "Google Firebase Plugin" .

Вы также должны проверить "your_project_name / plugin / cordova-plugin-firebasex / package.json", поскольку 9.0.1-cli будут ссылаться повсюду ... а это то, что вы хотите. Наконец, проверьте "your_project_name / package.json" и найдите cordova-plugin-firebasex": "^9.0.1-cli .

Затем попробуйте снова создать приложение с помощью sudo ionic cordova build ios .

Привет,

К вашему сведению, у меня была такая же проблема, и мне удалось ее решить, выполнив инструкции

cordova platform remove ios;
cordova platform add ios@latest;
cordova plugin remove cordova-plugin-firebasex;
cordova plugin add [email protected];

У меня были похожие проблемы и решил их, перейдя на версию 9.0.1-cli.

Однако это привело к увеличению времени сборки IOS более чем на 400% (по сравнению с версией плагина 6.1.0). Я проверил аналогичное увеличение при компиляции примера приложения с этими двумя версиями.

Я заметил выше комментарий от @patrickchoi, в котором

Кто-нибудь знает, есть ли способ уменьшить замедление времени сборки в последних версиях плагина? Я понимаю, что это, вероятно, не проблема самого плагина ... больше с компонентами Firebase sdk (??) Есть ли способ настроить это во время сборки (и в идеале управлять этим из настройки / скрипта / cli)?

У нас есть приложение Cordova, но мы также создаем собственное приложение для часов для нашего проекта iOS. Мы столкнулись с множеством проблем, пытаясь использовать Cordova CLI для сборки iOS, когда нам нужно было связать приложение для часов (из-за ограничений интерфейса командной строки для обработки приложений iOS и просмотра во время процесса сборки / архивирования - особенно для подписи, если я помню). Из-за этого нам нужно вручную выполнять сборки iOS app + watch с помощью xcodebuild.

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

cd platforms/ios

xcodebuild -workspace PROJECTNAME.xcworkspace -scheme PROJECTNAME -configuration Release -destination generic/platform=iOS -archivePath PROJECTNAME.xcarchive archive SHARED_PRECOMPS_DIR=build/sharedpch ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=YES

# exportOptions.plist was generated using XCode (archive app)
cp ../../build/ios/exportOptions.plist .

xcodebuild -exportArchive -archivePath PROJECTNAME.xcarchive -exportOptionsPlist exportOptions.plist -exportPath build/device

Мы используем v8.0.1 этого плагина. Я столкнулся с некоторыми другими проблемами при попытке использовать 9.0.1-cli ( error: Build input file cannot be found: gRPCCertificates-Cpp.bundle/gRPCCertificates-Cpp ).

Я знаю, что наша ситуация, вероятно, уникальна, но, возможно, это поможет другим в будущем. Спасибо!

@kennethtck Я забыл сказать вам, что мой коллега исправил нашу проблему, выполнив ваши действия. Спасибо за предоставленные шаги!

@ dpa99c Привет, похоже, InAppMessaging и GoogleTagManager были объединены обратно в ветку 9.0.3-cli от мастера в https://github.com/dpa99c/cordova-plugin-firebasex/commit/b21213f3cb4d461f87980694fb2a2869ba979996. В результате мы снова начали получать эту ошибку.

@ dpa99c , @maxtacco , я тоже.

`cd [MYPATH] / platform / ios
/ bin / sh -c [MYPATH] / Library / Developer / Xcode / DerivedData / [APPNAME] -aanowkqndskebrfkxmvdfhcnksye / Build / Intermediates.noindex / [APPNAME] .build / Debug-iphonesimulator / [APPNAME] .build7BADDC-2DD45. ш
ошибка: ресурс «[MYPATH] / Library / Developer / Xcode / DerivedData / [APPNAME] -aanowkqndskebrfkxmvdfhcnksye / Build / Products / Debug-iphonesimulator / FirebaseInAppMessaging / InAppMessagingDisplayResources.bundle» не найден. Запустите pod install, чтобы обновить скрипт ресурсов копирования.

* СБОЙ СБОРКИ *

Не удалось выполнить следующие команды сборки:
PhaseScriptExecution [CP] Ресурсы для модулей копирования [MYPATH] / Library / Developer / Xcode / DerivedData / [APPNAME] -aanowkqndskebrfkxmvdfhcnksye / Build / Intermediates.noindex / [APPNAME] .build / Debug-iphonesimulator /buDBAD1DB / 2DBAD7DB-скрипт / файл [APPNAME]. .sh
(1 сбой)
xcodebuild: сбой команды с кодом выхода 65`

Я использую плагин Cordova Webpack и предпочитаю использовать интерфейс командной строки.

Ура!

* редактировать *

Я проделал трюк @orenagiv , и он сработал. Похоже, что возврат к

@ jh-gh У вас получилось скомпилировать быстрее? Для меня на моем Macbook Air 2012 запускается 23 минуты с CLI (cordova run ios) !! И всегда кажется, что все перестраивается.

Ура.

@Phrensoua Нет, я не нашел способа ускорить его компиляцию в потоке 9.X. Я все еще использую 8.0.1, так как эта версия все еще создается за разумное время для iOS, тогда как версия 9.0.1-cli занимает в 4 раза больше времени для сборки (не пробовал более поздние версии 9.X) .

Я заметил выше комментарий от @patrickchoi, в котором

Простите @ jh-gh, вы решили проблему, просто удалив плагин и установив его снова таким образом?

cordova plugin add [email protected]

платформа Cordova для удаления iOS;
платформа cordova добавить ios @ latest;
плагин cordova удалить cordova-plugin-firebasex;
плагин cordova добавить

Спасибо @orenagiv, у меня это сработало.

@ jh-gh, спасибо за ответ. Со своей стороны, я решил на данный момент выполнить в Xcode. Он не перестраивается каждый раз, по крайней мере ...

Ура

Я заметил выше комментарий от @patrickchoi, в котором

Простите @ jh-gh, вы решили проблему, просто удалив плагин и установив его снова таким образом?

cordova plugin add [email protected]

@ilclaudio Я обновил версию зависимости в package.json и сделал чистую сборку (rm node_modules, npm install, rm platform / plugins, (ionic) cordova build ios).

У меня были похожие проблемы и решил их, перейдя на версию 9.0.1-cli.

Однако это привело к увеличению времени сборки IOS более чем на 400% (по сравнению с версией плагина 6.1.0). Я проверил аналогичное увеличение при компиляции примера приложения с этими двумя версиями.

Я заметил выше комментарий от @patrickchoi, в котором

Кто-нибудь знает, есть ли способ уменьшить замедление времени сборки в последних версиях плагина? Я понимаю, что это, вероятно, не проблема самого плагина ... больше с компонентами Firebase sdk (??) Есть ли способ настроить это во время сборки (и в идеале управлять этим из настройки / скрипта / cli)?

У меня также возникла проблема сборки с 9.1.1, но сборка с 9.1.1-cli прошла успешно. У этих версий одна и та же проблема времени сборки. На это уходит минут 15-20. Поэтому я понизил версию 8.0.1 и собрал за 2-3 минуты. Спасибо за тест и подсказку 8.0.1.

@orenagiv
СПАСИБО!
плагин ionic cordova добавить [email protected]

он работал отлично, время компиляции - единственная проблема в настоящее время

Совет: не прикрепляйте его так:
"cordova-plugin-firebasex": "^9.1.1-cli"
так как по умолчанию он будет использовать non-cli. Используйте это напрямую.
"cordova-plugin-firebasex": "9.1.1-cli"

Кажется очевидным, но сегодня я потерял некоторое время, почесывая голову, почему он все еще выдает старую ошибку.

Есть ли разница между сборкой с использованием CLI cordova run ios --device и Xcode?

@sboudouk да, в настоящее время создание модуля, содержащего подпапки (например, Google Tag Manager или Firebase Inappmessaging), не выполняется с помощью Cordova CLI (как описано здесь ), тогда как при сборке в Xcode он отлично работает, отсюда и необходимость в -cli ветка этого плагина.

Можно ли поставить пакет с тегом «latest-cli»?

Здравствуй

У меня большая проблема с этим плагином на ios при компиляции. Я не хотел начинать новую тему, так как не думаю, что это проблема с плагином, а с библиотекой pods. Это создает ошибку сборки, в которой говорится, что диск заполнен на разных этапах сборки. Я использую удаленный сервер Mac, и их поддержка не может мне помочь, кроме создания нового сервера, что я мог бы сделать, но я чувствую, что это может быть та же проблема. Я думаю, что это проблема с полным RAM-диском, поскольку эта библиотека модулей огромна и требует намного больше времени на компиляцию. Я искал в Интернете что-то, чтобы исправить эту проблему, очистив сборку xcode и т. Д., Но я все еще не могу создать эту сборку. Есть ли кто-нибудь, кто может посоветовать мне решение, почему возникает эта ошибка, и что я могу сделать, чтобы ее исправить? Сборка работает нормально и быстро без этого плагина

Вот пример
ошибка: доступ к базе данных сборки
"/Users/user915171/Library/Developer/Xcode/DerivedData/Astra-albjvigcqvqixkbzncjokuhaaees/Build/Intermediates.noindex/XCBuildData/build.db": база данных или диск заполнены

Любой, у кого есть эта проблема, пожалуйста, добавьте следующий плагин той же версии:
Кордова-плагин-androidx-адаптер 1.1.1
Кордова-плагин-androidx 1.0.2
Кордова-плагин-firebasex 9.0.1-cli

Для этого плагина необходимы cordova-plugin-androidx и cordova-plugin-androidx-adapter.

Привет

Возникли аналогичные проблемы при строительстве с Cordova Cli. Однако мне не удалось решить их, переключившись на какую-либо версию плагина -cli. Или путем перехода на версию 8.0.1, которая раньше работала у меня.

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

Не знаю, как эти модули все еще проникают в мою сборку даже при использовании плагина -cli или плагина 8.0.1. Отправлю, если найду решение. Если кто-нибудь видел эту проблему, дайте мне знать.


При создании модуля nanopb, импортированного из /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
В файл включен из: 1:
/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Целевые файлы поддержки / nanopb / nanopb-зонтик.h: 13: 9: ошибка: двойные кавычки включают "pb.h" в заголовок фреймворка, ожидаемый угол вместо -bracketed [-Werror, -Wquoted-include-in-framework-header]

импорт "pb.h"

    ^~~~~~
    <pb.h>

/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb -sung.h: 14: 9: ошибка: двойные кавычки включают "pb_common.h" в заголовок фреймворка, ожидаемый угол вместо -bracketed [-Werror, -Wquoted-include-in-framework-header]

импортировать "pb_common.h"

    ^~~~~~~~~~~~~
    <pb_common.h>

При создании модуля nanopb, импортированного из /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
В файл включен из: 1:
В файле, включенном из / Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-зонтик.h: 14:
/Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/nanopb/pb_common.h:8:10: ошибка: двойные кавычки включают "pb.h" в заголовок фреймворка, вместо ожидаемых угловых скобок [-Werror , -Wquoted-include-in-framework-header]

включить "pb.h"

     ^~~~~~
     <pb.h>

При создании модуля nanopb, импортированного из /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
В файл включен из: 1:
/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb -sung.h: 15: 9: ошибка: двойные кавычки включают "pb_decode.h" в заголовок фреймворка, ожидаемый угол вместо -bracketed [-Werror, -Wquoted-include-in-framework-header]

импортировать "pb_decode.h"

    ^~~~~~~~~~~~~
    <pb_decode.h>

При создании модуля nanopb, импортированного из /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
В файл включен из: 1:
В файле, включенном из / Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-зонтик.h: 15:
/Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/nanopb/pb_decode.h:9:10: error: двойные кавычки включают "pb.h" в заголовок фреймворка, вместо ожидаемого углового заключения [-Werror , -Wquoted-include-in-framework-header]

включить "pb.h"

     ^~~~~~
     <pb.h>

При создании модуля nanopb, импортированного из /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
В файл включен из: 1:
/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb -sung.h: 16: 9: ошибка: в двойных кавычках включить "pb_encode.h" в заголовок фреймворка, ожидаемый угол вместо -bracketed [-Werror, -Wquoted-include-in-framework-header]

импортировать "pb_encode.h"

    ^~~~~~~~~~~~~
    <pb_encode.h>

При создании модуля nanopb, импортированного из /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
В файл включен из: 1:
В файле, включенном из / Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-зонтик.h: 16:
/Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/nanopb/pb_encode.h:9:10: ошибка: двойные кавычки включают "pb.h" в заголовок фреймворка, вместо ожидаемых угловых скобок [-Werror , -Wquoted-include-in-framework-header]

включить "pb.h"

     ^~~~~~
     <pb.h>

При создании модуля nanopb, импортированного из /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
В файл включен из: 1:
/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Целевые файлы поддержки / nanopb / nanopb-зонтик.h: 17: 9: ошибка: двойные кавычки включают "pb.h" в заголовок фреймворка, ожидаемый угол вместо -bracketed [-Werror, -Wquoted-include-in-framework-header]

импорт "pb.h"

    ^~~~~~
    <pb.h>

/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb -sung.h: 18: 9: ошибка: двойные кавычки включают "pb_decode.h" в заголовок фреймворка, ожидаемый угол вместо -bracketed [-Werror, -Wquoted-include-in-framework-header]

импортировать "pb_decode.h"

    ^~~~~~~~~~~~~
    <pb_decode.h>

/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb -sung.h: 19: 9: ошибка: двойные кавычки включают "pb_common.h" в заголовок фреймворка, ожидаемый угол вместо -bracketed [-Werror, -Wquoted-include-in-framework-header]

импортировать "pb_common.h"

    ^~~~~~~~~~~~~
    <pb_common.h>

/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Целевые файлы поддержки / nanopb / nanopb-зонтик.h: 20: 9: ошибка: двойные кавычки включают "pb.h" в заголовок фреймворка, ожидаемый угол вместо -bracketed [-Werror, -Wquoted-include-in-framework-header]

импорт "pb.h"

    ^~~~~~
    <pb.h>

/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Целевые файлы поддержки / nanopb / nanopb -sung.h: 21: 9: ошибка: двойные кавычки включают "pb_encode.h" в заголовок фреймворка, ожидаемый угол вместо -bracketed [-Werror, -Wquoted-include-in-framework-header]

импортировать "pb_encode.h"

    ^~~~~~~~~~~~~
    <pb_encode.h>

/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Целевые файлы поддержки / nanopb / nanopb-зонтик.h: 22: 9: ошибка: двойные кавычки включают "pb_common.h" в заголовок фреймворка, ожидаемый угол вместо -bracketed [-Werror, -Wquoted-include-in-framework-header]

импортировать "pb_common.h"

    ^~~~~~~~~~~~~
    <pb_common.h>

Сгенерировано 13 ошибок.
В файле, включенном из /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.c:20:
/Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:10: фатальная ошибка: не удалось создать модуль nanopb

включают

~ ~~~ ^
Сгенерировано 14 ошибок.

* АРХИВ НЕ УДАЛЕН *

Не удалось выполнить следующие команды сборки:
CompileC /Users/haydencassar/Library/Developer/Xcode/DerivedData/Vita_Plan-adyddjnjkyhpbddfhgtvyhypkbaq/Build/Intermediates.noindex/ArchiveIntermediates/Vita Plan / IntermediateBuildDbuilds.ObjectsPath / IntermediateBuild.FilesPath / iphone-cdbuild.s-Objects / .nanopb.o GoogleDataTransport / GoogleDataTransport / GDTCCTLibrary / Protogen / nanopb / cct.nanopb.c обычный armv7 c com.apple.compilers.llvm.clang.1_0.compiler
(1 сбой)
xcodebuild: сбой команды с кодом выхода 65
[ОШИБКА] Произошла ошибка при выполнении подпроцесса cordova.

    cordova build ios --debug --device --buildConfig ./platforms/ios/build.json exited with exit code 65.

@ hcassar93 Я видел похожие проблемы. Я предлагаю вам попробовать обновить установку cocoapods до предварительной версии (см. Https://stackoverflow.com/questions/63646607/xcode-12-using-firebase-pods-lexical-or-preprocessor-issue-pb-h -file-not-fou / 63648164 # 63648164). Это исправило это для меня.

@ jh-gh Большое спасибо. Очень признателен за вашу помощь. Исправил и у меня.

У меня тоже работает закрепление версии плагина 8.0.1. Построение из CLI и CI.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги