Ионная версия: (отметьте один знаком «x»)
[ ] 1.x (Для проблем с Ionic 1.x используйте https://github.com/ionic-team/ionic-v1)
[ ] 2.x
[х] 3.х
Я отправляю ... (отметьте один знаком "x")
[x] отчет об ошибке
[ ] запрос функции
[ ] запрос на поддержку => Пожалуйста, не отправляйте запросы на поддержку здесь, используйте один из этих каналов: https://forum.ionicframework.com/ или http://ionicworldwide.herokuapp.com/
Текущее поведение:
По прошествии неопределенного периода времени мое приложение больше не может создаваться для устройств iOS.
Ожидаемое поведение:
Он должен иметь возможность сборки для устройств ios.
Действия по воспроизведению:
Я понятия не имею, как это происходит
Связанный код:
Это то, что я получаю, когда пытаюсь собрать для ios
> cordova build ios
✖ Running command - failed!
[ERROR] An error occurred while running cordova build ios (exit code 1):
(truncated) ... licate symbol _OBJC_IVAR_$_UNIHTTPStringResponse._body in:
/Users/Alexandre/Library/Developer/Xcode/DerivedData/ShOroom-egyzqumtqhesmlcsgwngozvucwss/Build/Intermediates/ShOroom.build/Debug-iphonesimulator/ShOroom.build/Objects-normal/x86_64/UNIHTTPStringResponse-6AE7BF574F7FD89D.o
/Users/Alexandre/Library/Developer/Xcode/DerivedData/ShOroom-egyzqumtqhesmlcsgwngozvucwss/Build/Intermediates/ShOroom.build/Debug-iphonesimulator/ShOroom.build/Objects-normal/x86_64/UNIHTTPStringResponse-ACD8B349DA1366AA.o
duplicate symbol _OBJC_CLASS_$_UNIHTTPStringResponse in:
/Users/Alexandre/Library/Developer/Xcode/DerivedData/ShOroom-egyzqumtqhesmlcsgwngozvucwss/Build/Intermediates/ShOroom.build/Debug-iphonesimulator/ShOroom.build/Objects-normal/x86_64/UNIHTTPStringResponse-6AE7BF574F7FD89D.o
/Users/Alexandre/Library/Developer/Xcode/DerivedData/ShOroom-egyzqumtqhesmlcsgwngozvucwss/Build/Intermediates/ShOroom.build/Debug-iphonesimulator/ShOroom.build/Objects-normal/x86_64/UNIHTTPStringResponse-ACD8B349DA1366AA.o
duplicate symbol _OBJC_METACLASS_$_UNIHTTPStringResponse in:
/Users/Alexandre/Library/Developer/Xcode/DerivedData/ShOroom-egyzqumtqhesmlcsgwngozvucwss/Build/Intermediates/ShOroom.build/Debug-iphonesimulator/ShOroom.build/Objects-normal/x86_64/UNIHTTPStringResponse-6AE7BF574F7FD89D.o
/Users/Alexandre/Library/Developer/Xcode/DerivedData/ShOroom-egyzqumtqhesmlcsgwngozvucwss/Build/Intermediates/ShOroom.build/Debug-iphonesimulator/ShOroom.build/Objects-normal/x86_64/UNIHTTPStringResponse-ACD8B349DA1366AA.o
duplicate symbol _OBJC_IVAR_$_UNIJsonNode._array in:
/Users/Alexandre/Library/Developer/Xcode/DerivedData/ShOroom-egyzqumtqhesmlcsgwngozvucwss/Build/Intermediates/ShOroom.build/Debug-iphonesimulator/ShOroom.build/Objects-normal/x86_64/UNIJsonNode-7600CC35AA339D64.o
/Users/Alexandre/Library/Developer/Xcode/DerivedData/ShOroom-egyzqumtqhesmlcsgwngozvucwss/Build/Intermediates/ShOroom.build/Debug-iphonesimulator/ShOroom.build/Objects-normal/x86_64/UNIJsonNode-B9FEAECE639D8883.o
duplicate symbol _OBJC_IVAR_$_UNIJsonNode._object in:
/Users/Alexandre/Library/Developer/Xcode/DerivedData/ShOroom-egyzqumtqhesmlcsgwngozvucwss/Build/Intermediates/ShOroom.build/Debug-iphonesimulator/ShOroom.build/Objects-normal/x86_64/UNIJsonNode-7600CC35AA339D64.o
/Users/Alexandre/Library/Developer/Xcode/DerivedData/ShOroom-egyzqumtqhesmlcsgwngozvucwss/Build/Intermediates/ShOroom.build/Debug-iphonesimulator/ShOroom.build/Objects-normal/x86_64/UNIJsonNode-B9FEAECE639D8883.o
duplicate symbol _OBJC_CLASS_$_UNIJsonNode in:
/Users/Alexandre/Library/Developer/Xcode/DerivedData/ShOroom-egyzqumtqhesmlcsgwngozvucwss/Build/Intermediates/ShOroom.build/Debug-iphonesimulator/ShOroom.build/Objects-normal/x86_64/UNIJsonNode-7600CC35AA339D64.o
/Users/Alexandre/Library/Developer/Xcode/DerivedData/ShOroom-egyzqumtqhesmlcsgwngozvucwss/Build/Intermediates/ShOroom.build/Debug-iphonesimulator/ShOroom.build/Objects-normal/x86_64/UNIJsonNode-B9FEAECE639D8883.o
duplicate symbol _OBJC_METACLASS_$_UNIJsonNode in:
/Users/Alexandre/Library/Developer/Xcode/DerivedData/ShOroom-egyzqumtqhesmlcsgwngozvucwss/Build/Intermediates/ShOroom.build/Debug-iphonesimulator/ShOroom.build/Objects-normal/x86_64/UNIJsonNode-7600CC35AA339D64.o
/Users/Alexandre/Library/Developer/Xcode/DerivedData/ShOroom-egyzqumtqhesmlcsgwngozvucwss/Build/Intermediates/ShOroom.build/Debug-iphonesimulator/ShOroom.build/Objects-normal/x86_64/UNIJsonNode-B9FEAECE639D8883.o
duplicate symbol _OBJC_CLASS_$_CDVLogger in:
/Users/Alexandre/Library/Developer/Xcode/DerivedData/ShOroom-egyzqumtqhesmlcsgwngozvucwss/Build/Intermediates/ShOroom.build/Debug-iphonesimulator/ShOroom.build/Objects-normal/x86_64/CDVLogger.o
/Applications/XAMPP/xamppfiles/htdocs/LVDLV/clone_new/lvdlv/platforms/ios/build/emulator/libCordova.a(CDVLogger.o)
duplicate symbol _OBJC_METACLASS_$_CDVLogger in:
/Users/Alexandre/Library/Developer/Xcode/DerivedData/ShOroom-egyzqumtqhesmlcsgwngozvucwss/Build/Intermediates/ShOroom.build/Debug-iphonesimulator/ShOroom.build/Objects-normal/x86_64/CDVLogger.o
/Applications/XAMPP/xamppfiles/htdocs/LVDLV/clone_new/lvdlv/platforms/ios/build/emulator/libCordova.a(CDVLogger.o)
ld: 260 duplicate symbols for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
** BUILD FAILED **
The following build commands failed:
Ld build/emulator/ShOroom.app/ShOroom normal x86_64
(1 failure)
Error: Error code 65 for command: xcodebuild with args:
-xcconfig,/Applications/XAMPP/xamppfiles/htdocs/LVDLV/clone_new/lvdlv/platforms/ios/cordova/build-debug.xcconfig,-workspace,ShOroom.xcworkspace,-scheme,ShOroom,-configuration,Debug,-sdk,iphonesimulator,-destination,platform=iOS
Simulator,name=iPhone
SE,build,CONFIGURATION_BUILD_DIR=/Applications/XAMPP/xamppfiles/htdocs/LVDLV/clone_new/lvdlv/platforms/ios/build/emulator,SHARED_PRECOMPS_DIR=/Applications/XAMPP/xamppfiles/htdocs/LVDLV/clone_new/lvdlv/platforms/ios/build/sharedpch
Другая информация:
Это происходит со мной второй раз, после первого раза мне пришлось создавать ионный проект с нуля и потихоньку интегрировать то, что было в исходном проекте и сборке под ios после каждой итерации, чтобы обнаружить проблему. Через несколько часов, когда код был полностью скопирован, я каким-то образом смог собрать его для ios.
Сегодня утром пытался собрать для ios, и у меня все еще возникает та же проблема [см. соответствующий раздел кода] .
Также пытался удалить мои каталоги /plugins и /node_modules, но это не помогло.
Не смог найти ничего в Интернете, чтобы помочь мне ни ..
Ионная информация: (запустите ionic info
из командной строки терминала/команды и вставьте вывод ниже):
cli packages:
@ionic/cli-utils : 1.10.2
ionic (Ionic CLI) : 3.10.3
global packages:
Cordova CLI : 7.0.1
local packages:
@ionic/app-scripts : 2.1.4
Cordova Platforms : android 6.2.3 ios 4.4.0
Ionic Framework : ionic-angular 3.6.1
System:
ios-deploy : 1.9.1
ios-sim : 6.0.0
Node : v6.11.0
npm : 3.10.10
OS : OS X El Capitan
Xcode : Xcode 8.2.1 Build version 8C1002
Привет! Спасибо, что открыли вопрос с нами!
Я не могу воспроизвести вашу ошибку, что вполне логично, потому что, как вы говорите, она обычно работает, а затем таинственным образом останавливается. Итак... начнем с некоторых версий вещей:
Я использую Xcode 9, какую версию используете вы?
Я использую версию $ cordova-ios
4.4.0
, которая выглядит так же, как и вы...
Хмммм... попробую кое-что
Привет, @kensodemann , сейчас я использую Xcode версии 8.2.1.
Спасибо!
Попробуйте удалить консоль плагина и попробуйте еще раз, у меня были те же проблемы. Но у меня Кордова ios 4.5
Проблема в CDVLogger, который уже есть в Cordova cli 7.
Копия @kensodemann
Дублировал его и исправил, хотя я не совсем уверен, что это ваша проблема, но стоит попробовать.
Во-первых, я удаляю свои каталоги node_modules
и platform/ios
и выполняю npm i
и ionic build
, что заканчивается установкой cordova-ios
версии 4.5.0
, что вызвало ту же проблему, что и у вас.
Мое предположение (и это только предположение) заключается в том, что у вас каким-то образом есть cordova-ios 4.5.0
, хотя ionic info
сообщает о 4.4.0
(странно, но на данный момент у меня нет лучшего объяснения) .
Итак, я сделал это:
package.json
измените "cordova-ios": "^4.4.0"
на "cordova-ios": "4.4.0"
(без '^')config.xml
измените <engine name="ios" spec="^4.4.0" />
на <engine name="ios" spec="4.4.0" />
rm -rf node_modules/ platforms/ios/
npm i
ionic cordova build ios
Так что, по крайней мере для меня, ключом к исправлению было прикрепление версии cordova-ios
к версии 4.4.0
, а не использование ^4.4.0
, что потребует обновления до минорной версии.
Конечно, это означает, что когда придет время обновить cordova-ios
, вам придется делать это вручную, но вы, вероятно, все равно захотите этот элемент управления.
В любом случае, попробуйте и дайте мне знать, если это сработает для вас.
@kensodemann Именно в этом дело!
@kensodemann Ура, теперь я могу строить, спасибо!!
Вот в чем дело: прежде чем делать ioinc build
, я зашел в свой файл package.json и вот что я нашел "cordova-ios": "^4.4.0",
, а не ^4.5.0
.
В любом случае, я последовал вашим инструкциям, запустил rm -rf node_modules/ platform/ios
, затем npm i
и npm build
.
Эта последняя команда затем изменила мой "cordova-ios": "^4.4.0",
на "cordova-ios": "^4.5.0",
.
Чтобы максимально точно следовать вашим инструкциям, я изменил его на ваше предложение "cordova-ios": "4.4.0",
(то же самое для config.xml
).
Удалил мои node_modules
и platform/ios
еще раз и запустил npm i
, затем ionic cordova build ios
, и это сработало .
Удивительно, но после этого я все еще обнаруживаю, что у меня "cordova-ios": "^4.4.0",
в моих package.json
и <engine name="ios" spec="^4.4.0" />
в моих config.xml
Удивительно, но после этого я все еще обнаружил себя с «cordova-ios»: «^ 4.4.0» в моем package.json и
в моем config.xml
Я предполагаю, что Кордова делает это. Лично я не фанат инструментов, которые портят мои настройки... :(
Я собираюсь закрыть это тогда. Рад, что это работает для вас сейчас.
@nuno прав, плагин консоли является основной причиной, которая была включена в Cordova 7, поэтому просто удалите плагин, чтобы решить проблему.
@kensodemann
Не работал для меня. я получил
Сборка Ld/эмулятор/MyApp.app/MyApp обычный x86_64
cd /Applications/IonicApps/BabyName/платформы/ios
экспорт IPHONEOS_DEPLOYMENT_TARGET=9.0
export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/Library/Frameworks/Python.framework /Версии/3.5/bin:/Пользователи/saikrishna/Программное обеспечение/android-sdks/platform-tools:/Пользователи/saikrishna/Программное обеспечение/android-sdks/tools:/usr/local/bin:/usr/bin:/bin: /usr/sbin:/sbin"
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator10. 3.sdk -L/Applications/IonicApps/BabyName/platforms/ios/build/emulator -F/Applications/IonicApps/BabyName/platforms/ios/build/emulator -FMyApp/Plugins/cordova-plugin-facebook4 -FMyApp/Plugins/ cordova-plugin-googleplus -filelist/Users/eupherntechnology/Library/Developer/Xcode/DerivedData/MyApp-gddohggkprehdkdqznpxmbtrwfzt/Build/Intermediates/MyApp.build/Debug-iphonesimulator/MyApp.build/Objects-normal/x86_64/MyApp.LinkFileList — Xlinker -rpath -Xlinker @executable_path/Frameworks -mios-simulator-version-min=9.0 -dead_strip -Xlinker -object_path_lto -Xlinker /Users/eupherntechnology/Library/Developer/Xcode/DerivedData/MyApp-gddohggkprehdkdqznpxmbtrwfzt/Build/Intermediates/MyApp. build/Debug-iphonesimulator/MyApp.build/Objects-normal/x86_64/MyApp_lto.o -Xlinker -no_de дубликат -Xlinker -objc_abi_version -Xlinker 2 -fobjc-arc -fobjc-link-runtime -ObjC -Xlinker -sectcreate -Xlinker __TEXT -Xlinker __entitlements -Xlinker /Users/eupherntechnology/Library/Developer/Xcode/DerivedData/MyApp-gddohggkprehdkdqznpxmbtrwfzt/Build /Intermediates/MyApp.build/Debug-iphonesimulator/MyApp.build/MyApp.app.xcent /Applications/IonicApps/BabyName/platforms/ios/build/emulator/libCordova.a -weak_framework AudioToolbox -framework StoreKit -framework Bolts -framework FBSDKCoreKit -framework FBSDKLoginKit -framework FBSDKShareKit -framework CoreLocation -framework GoogleAppUtilities -framework GoogleAuthUtilities -framework GoogleNetworkingUtilities -framework GoogleSignIn -framework GoogleSymbolUtilities -framework GoogleUtilities -weak_framework AddressBook -weak_framework CoreText -weak_framework SafariServices -weak_framework Security -weak_framework SystemConfiguration -weak-l -weak_framework WebKit -weak_framework Social -weak_framework MessageUI -Xlinker -d ependency_info -Xlinker/Users/eupherntechnology/Library/Developer/Xcode/DerivedData/MyApp-gddohggkprehdkdqznpxmbtrwfzt/Build/Intermediates/MyApp.build/Debug-iphonesimulator/MyApp.build/Objects-normal/x86_64/MyApp_dependency_info.dat -o /Applications/ IonicApps/BabyName/platforms/ios/build/emulator/MyApp.app/MyApp
повторяющийся символ _OBJC_CLASS_$_CDVLogger в:
/Users/eupherntechnology/Library/Developer/Xcode/DerivedData/MyApp-gddohggkprehdkdqznpxmbtrwfzt/Build/Intermediates/MyApp.build/Debug-iphonesimulator/MyApp.build/Objects-normal/x86_64/CDVLogger.o
/Applications/IonicApps/BabyName/platforms/ios/build/emulator/libCordova.a(CDVLogger.o)
повторяющийся символ _OBJC_METACLASS_$_CDVLogger в:
/Users/eupherntechnology/Library/Developer/Xcode/DerivedData/MyApp-gddohggkprehdkdqznpxmbtrwfzt/Build/Intermediates/MyApp.build/Debug-iphonesimulator/MyApp.build/Objects-normal/x86_64/CDVLogger.o
/Applications/IonicApps/BabyName/platforms/ios/build/emulator/libCordova.a(CDVLogger.o)
ld: 2 повторяющихся символа для архитектуры x86_64
clang: ошибка: команда компоновщика не удалась с кодом выхода 1 (используйте -v, чтобы увидеть вызов)
* ПОСТРОЙКА НЕ ПРОШЛА *
Не удалось выполнить следующие команды сборки:
Сборка Ld/эмулятор/MyApp.app/MyApp обычный x86_64
(1 неудача)
Ошибка: код ошибки 65 для команды: xcodebuild с аргументами: -xcconfig,/Applications/IonicApps/BabyName/platforms/ios/cordova/build-debug.xcconfig,-workspace,MyApp.xcworkspace,-scheme,MyApp,-configuration,Debug ,-sdk,iphonesimulator,-destination,platform=iOS Simulator,name=iPhone SE,build,CONFIGURATION_BUILD_DIR=/Applications/IonicApps/BabyName/platforms/ios/build/emulator,SHARED_PRECOMPS_DIR=/Applications/IonicApps/BabyName/platforms/ios /сборка/sharedpch
Окружающая обстановка
пакеты cli: (/Applications/IonicApps/BabyName/node_modules)
@ionic/cli-utils : 1.19.0
ionic (Ionic CLI) : 3.19.0
глобальные пакеты:
cordova (Cordova CLI) : 7.1.0
Gulp CLI : CLI version 3.9.1 Local version 3.9.1
локальные пакеты:
Cordova Platforms : ios 4.5.4
Ionic Framework : ionic1 1.3.3
Система:
ios-deploy : 1.9.1
ios-sim : 6.1.2
Node : v6.10.3
npm : 2.15.12
OS : macOS Sierra
Xcode : Xcode 8.3.3 Build version 8E3004b
Переменные среды:
ANDROID_HOME : /Users/saikrishna/Softwares/android-sdks
Разное:
backend : pro
@surajitdeveloper -
Вы уверены, что не устанавливаете консольный плагин?
Вы все удаляли и заново устанавливали с нуля?
Если ваш репозиторий есть в сети, дайте ссылку, и я могу быстро взглянуть. Однако в целом это не проблема Ionic Framework, а проблема использования несовместимых плагинов.
@kensodemann прав, это все из-за того, что плагины старые или несовместимые.
Для меня это оказался cordova-plugin-inappbrowser . В моем config.xml все еще была ссылка на репозиторий git, которого больше не существует. Сначала я не обращал внимания на процесс сборки, но вдруг заметил, что сборка жаловалась на отсутствие репозитория для плагина. Решение оказалось довольно простым: прописать строчку в config.xml в комментарии и переустановить плагин. И iOS снова собиралась :)
Итак, если это может помочь, проверьте журнал сборки после запуска ionic cordova build ios
— он может содержать ошибки о плагинах. И проверьте все свои плагины: простая переустановка может не помочь, возможно, вам придется обновить версии.
У меня работает решение от @nuno , просто запустите:
cordova plugin rm cordova-plugin-console
cordova platform rm ios
cordova platform add ios
cordova build ios
Я использую Cordova-ios версии 4.5.4.
Всем привет,
У меня была такая же проблема, и я попытался выполнить решение, опубликованное @didinj , и оно не работает, потому что после этого я получаю сообщение об ошибке для скриптов при выполнении платформы rm, а затем собираю ios, я снова добавляю скрипты приложений, но проблема заключалась в следующем: npm install @ionic / app-scripts@latest --save-dev, потому что установите версию сценариев 3.1.7, и это приведет к той же основной ошибке, затем я выполняю и снова запускаю сценарии приложений, но с меньшей версией для сценариев приложений и теперь отлично работает с 3.0.0: npm install @ionic /app-scripts@ 3.0.0 --save -dev
Я использую тоже Cordova-ios версии 4.5.4 и все последние версии всех в macOS High Sierra 10.13.2 с Xcode 9.2
cli-пакеты: (/usr/local/lib/node_modules)
@ionic/cli-utils : 1.19.0
ionic (Ionic CLI) : 3.19.0
глобальные пакеты:
cordova (Cordova CLI) : 8.0.0
локальные пакеты:
@ionic/app-scripts : 3.0.0
Cordova Platforms : android 6.2.3 ios 4.5.4
Ionic Framework : ionic-angular 3.9.2
Система:
ios-deploy : 1.9.2
Node : v8.0.0
npm : 5.0.0
OS : macOS High Sierra
Xcode : Xcode 9.2 Build version 9C40b
Я надеюсь, что этим я смогу помочь другим пользователям.
Спасибо всем.
работает на меня! спасибо @kensodemann ! 😃
Согласно https://github.com/apache/cordova-plugin-console
Работа над этим подключаемым модулем больше не ведется, так как функции, предоставляемые этим подключаемым модулем, теперь включены в Cordova-ios 4.5.0 или выше, а поддержка уже встроена в Cordova-Windows > 5.0.0. Вы должны удалить этот плагин из ваших приложений.
у кого-нибудь еще есть эта проблема? из нового приложения я не могу использовать этот плагин...
Решение от @nuno работает и у меня.
ionic cordova plugin remove cordova-plugin-console
Спасибо за проблему! Эта проблема заблокирована, чтобы предотвратить комментарии, не относящиеся к исходной проблеме. Если это все еще проблема с последней версией Ionic, создайте новую проблему и убедитесь, что шаблон полностью заполнен.
Самый полезный комментарий
Попробуйте удалить консоль плагина и попробуйте еще раз, у меня были те же проблемы. Но у меня Кордова ios 4.5
Проблема в CDVLogger, который уже есть в Cordova cli 7.
Копия @kensodemann