好的,我已经浏览了所有的论坛和网站,但我们还没有找到解决方案,甚至是我们在使用大量项目使用IBDesignables时遇到的问题的原因(大约30个通过
Cocoapods或内部).
Xcode 8.0尽管它在
Xcode 7.x中重新开始.框架是
Swift和Objective-C的混合体.
Xcode中的实际错误消息是:
"Failed to render and update auto layout status for XXXX: dlopen(xxxx,1): Library not loaded: @rpath/YYYY/YYYY.framework" and "Failed to update auto layout status: dlopen(xxxx,1): Library not loaded: @rpath/YYYY/YYYY.framework"
对于使用相同框架的各种组合的较小项目,我们似乎没有问题.
我已经能够通过从项目中删除一些来获取错误来抱怨不加载的库,因此它似乎与被抱怨的实际库没有直接关系.
我已经消除了-ObjC和all_load作为可能的罪魁祸首,确保它们不在项目或xxconfig文件的位置.
许多框架确实共享相同的依赖项. AFNetworking,ActionSheetPicker,ReactiveCocoa等等,但删除它们只会移动错误.
有没有其他人看到IBDesignables没有在大型项目上工作的问题?
解决方法
它是一种解决方法,但似乎正在发挥作用(目前).我们发现如果我们将$(FRAMEWORK_SEARCH_PATHS)和“/Applications/Xcode.app/Contents/Developer/Toolchains/Swift_2.3.xctoolchain/usr/lib/swift/iphonesimulator”添加到每个pod的项目级别. LD_RUNPATH_SEARCH_PATHS我们可以避免错误,没有可见的副作用.
这是我们的Podfile的片段:
installer.pods_project.build_configurations.each do |config| config.build_settings['LD_RUNPATH_SEARCH_PATHS'] = [ '$(FRAMEWORK_SEARCH_PATHS)','"/Applications/Xcode.app/Contents/Developer/Toolchains/Swift_2.3.xctoolchain/usr/lib/swift/iphonesimulator"' ] end
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。