cocoapods - 所有 AWS 开发工具包(El Capitan + XCode 7)的 pod 更新结果为 "duplicate interface definition for class xxx"

标签 cocoapods xcode7 aws-sdk osx-elcapitan aws-sdk-ios

刚才,我更新了我的 AWS SDK pod,对此我感到非常遗憾。我第一次看到这个是在更新 pod 时:

dyld: warning, LC_RPATH @executable_path/../../../../../../../SharedFrameworks in /Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/../../..//DVTInstrumentsFoundation.framework/Versions/A/DVTInstrumentsFoundation being ignored in restricted program because of @executable_path dyld: warning, LC_RPATH @executable_path/../lib in /Applications/Xcode.app/Contents/Frameworks/IDEFoundation.framework/Versions/A/../../../../Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libclang.dylib being ignored in restricted program because of @executable_path

dyld: warning, LC_RPATH @executable_path/../lib in /Applications/Xcode.app/Contents/Frameworks/IDEFoundation.framework/Versions/A/../../../../Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/libLTO.dylib being ignored in restricted program because of @executable_path

dyld: warning, LC_RPATH @executable_path/../Frameworks in /Applications/Xcode.app/Contents/PlugIns/Xcode3Core.ideplugin/Contents/MacOS/Xcode3Core being ignored in restricted program because of @executable_path



然后当我打开我的项目并构建时,我遇到了很多很多构建失败,提示同样的事情 类 XXX 的重复接口(interface)定义 :

enter image description here

我尝试了很多解决方案,重新安装 AWS SDK pods,重新安装 cocoapods,将 cocoapods 降级到 0.38.2,将 AWS SDK pods 降级到 2.2.6,但没有任何帮助。如果我注释掉 Objective-C 桥头中的导入,我没有这些错误,但 Xcode 只是提示找不到代码中使用的某些类。但我不认为将它们注释掉是正确的解决方案。
enter image description here

好吧,我搜索了https://github.com/CocoaPods/CocoaPods/issues/4302 ,这似乎是 cocoapods 的问题?

有人对此有任何想法吗?谢谢。

最佳答案

回答(希望:))

  • 从桥接头中删除#import
  • 在相应的 Swift 文件中添加“import AWSS3”(或您需要的任何类)

  • 解释

    从 Cocoapods 0.36 版开始,如果 Pod 在 Swift 代码中或声明“use_frameworks!”,则不需要通过桥接头导入 Pod。 (AWS 在其版本中所做的 2.2.1

    编辑

    就我而言,我用“pod 'AWSS3', '~> 2.2.0'”替换了“pod 'AWSiOSSDKv2', '~> 2.0'”,并在桥接文件中添加了“#import”。

    关于cocoapods - 所有 AWS 开发工具包(El Capitan + XCode 7)的 pod 更新结果为 "duplicate interface definition for class xxx",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33180650/

    相关文章:

    xcode6 - Xcode 6 和 Cocoapods 使用版本 0.34.4 & cocoapods-0.35.0.rc2

    ios - Swift2.0 HTTP 请求不工作

    ios - Xcode 7 UI 测试 : how to dismiss a series of system alerts in code

    java - AmazonS3Client.putObject with File 保持对文件的打开引用

    ios - 架构 i386 的 undefined symbol ,仅在 iPad 模拟器上

    ios - 在 swift3 中安装 pod 后,链接器命令失败,退出代码为 1(使用 -v 查看调用)

    ios - Swift:Nil 与返回类型 String 不兼容

    javascript - JavaScript 的 AWS api 网关?

    node.js - 在changeResourceRecordSets 上出现 InvalidInput 错误

    ios - xCode:找不到库 - lPods-Bolts - 退出代码 1