iOS   发布时间:2022-05-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了为iOS构建Cordova / Meteor / Ionic:“重复符号_OBJC_CLASS _ $_ CDVLogger”大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我正在使用Meteor在 Xcode for iOS中编译时出现错误,因为我将Xcode升级到iOS 11并将Meteor升级到1.5.2 流星控制台中的构建运行良好但是当尝试在Xcode上运行时,我收到错误. 以下是详细信息: duplicate symbol _OBJC_CLASS_$_CDVLogger in: /Users/almaju/Library/Developer/Xcod
我正在使用Meteor在 Xcode for iOS中编译时出现错误,因为我将Xcode升级到iOS 11并将Meteor升级到1.5.2

流星控制台中的构建运行良好但是当尝试在Xcode上运行时,我收到错误.

以下是详细信息:

duplicate symbol _OBJC_CLASS_$_CDVLogger in:
    /Users/almaju/Library/Developer/Xcode/DerivedData/Shotgun-gfxenslogefzngcppvotdeekcsof/Build/Intermediates.noindex/Shotgun.build/Debug-iphonesimulator/Shotgun.build/Objects-normal/x86_64/CDVLogger.o
    /Users/almaju/Library/Developer/Xcode/DerivedData/Shotgun-gfxenslogefzngcppvotdeekcsof/Build/Products/Debug-iphonesimulator/libCordova.a(CDVLogger.o)
duplicate symbol _OBJC_MetaCLASS_$_CDVLogger in:
    /Users/almaju/Library/Developer/Xcode/DerivedData/Shotgun-gfxenslogefzngcppvotdeekcsof/Build/Intermediates.noindex/Shotgun.build/Debug-iphonesimulator/Shotgun.build/Objects-normal/x86_64/CDVLogger.o
    /Users/almaju/Library/Developer/Xcode/DerivedData/Shotgun-gfxenslogefzngcppvotdeekcsof/Build/Products/Debug-iphonesimulator/libCordova.a(CDVLogger.o)
ld: 2 duplicate symbols for architecture x86_64
clang: error: linker command Failed with exit code 1 (use -v to see invocation)

我的项目中有这些插件

cordova-android-support-gradle-release@0.0.2
cordova-custom-config@2.0.3
cordova-plugin-dialogs@1.3.3
cordova-plugin-facebook4@1.9.1
cordova-plugin-inappbrowser@1.7.1
cordova-plugin-meteor-webapp@1.4.2
cordova-plugin-splashscreen@4.0.3
cordova-plugin-statusbar@2.2.3
cordova-plugin-vibration@2.1.5
de.appplant.cordova.plugin.local-notification@0.8.4
org.apache.cordova.dialogs@1.3.1
org.apache.cordova.vibration@2.1.3

我一直在寻找一段时间,尝试流星重置或删除并重新添加ios平台,使用Build SetTings等播放但似乎没有什么能解决这个问题……

在构建中查看cordova_plugins.js,我可以看到:

{
  "id": "cordova-plugin-console.console","file": "plugins/cordova-plugin-console/www/console-via-logger.js","pluginId": "cordova-plugin-console","clobbers": [
    "console"
  ]
},{
  "id": "cordova-plugin-console.logger","file": "plugins/cordova-plugin-console/www/logger.js","clobbers": [
    "cordova.logger"
  ]
},

可能是问题,但我不知道如何在流星建设中防止这种情况……

解决方法

似乎cordova-plugin-console功能已被移入主Cordova文件中.如果您使用的是较新版本的Cordova,最终会得到两个Console Logger代码副本,并且您会收到XCode错误.

要摆脱这个问题,您需要运行:

cordova plugin remove cordova-plugin-console

然后确保在依赖项或插件部分的package.json文件中没有它的条目.

我建议你删除并重新安装你的项目的ios平台,以确保一切都干净,但你可能不需要.

cordova platform remove ios
cordova platform add ios

在这里找到了一些关于这个问题的评论https://forum.ionicframework.com/t/getting-error-on-ios-build/109326/3

大佬总结

以上是大佬教程为你收集整理的为iOS构建Cordova / Meteor / Ionic:“重复符号_OBJC_CLASS _ $_ CDVLogger”全部内容,希望文章能够帮你解决为iOS构建Cordova / Meteor / Ionic:“重复符号_OBJC_CLASS _ $_ CDVLogger”所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。