在框架中使用Cocoapods框架 - 找不到图像



我正在尝试创建一个框架,我想在其中使用Cocoapods(SwiftWebsocket(的另一个框架。但是,当我运行应用程序时,代码编译时,我会得到臭名昭著的:

dyld: Library not loaded: 
@rpath/SwiftWebSocket.framework/Versions/A/SwiftWebSocket
  Referenced from: /Users/xxxxx/Library/Developer/Xcode/DerivedData/TestFx-efmkyfxootekawemcuqasuakdyii/Build/Products/Debug/TestFx.framework/Versions/A/TestFx
Reason: image not found

当我用otool -L转储共享库时,我会看到:

TestFx:
    @rpath/TestFx.framework/Versions/A/TestFx (compatibility version 1.0.0, current version 1.0.0)
    @rpath/SwiftWebSocket.framework/Versions/A/SwiftWebSocket (compatibility version 1.0.0, current version 1.0.0)
...

问题似乎是SwiftWebsocket的路径是@rpath/SwiftWebSocket.framework/...,但是在磁盘上swiftwebsocket.framework实际上位于SwiftWebsocket目录中:

├── Pods_TestFx.framework
├── SwiftWebSocket
│   └── SwiftWebSocket.framework
├── TestFx.framework
├── TestFxApp.app

如果我在父目录中创建指向SwiftWebsocket.framework的链接,则可以找到框架并启动应用程序。

我如何告诉Xcode/cocoapads,在我的框架中寻找嵌入的SwiftWebsocket框架的路径应为@rpath/SwiftWebSocket/SwiftWebSocket.framework/...,而不是@rpath/SwiftWebSocket.framework/...或一般而言以任何方式使其工作?

将其添加到您的 podspec (在您的框架中(

spec.framework = 'SwiftWebSocket'

-

您可以在此处找到有关如何配置PODSPEC的更多信息:https://guides.cocoapods.org/syntax/podspec.html

最新更新