使用Swift包管理依赖项分发iOS框架

6
我们正在开发一个名为FramworkSDK的iOS框架,并希望将其作为二进制文件分发给我们的客户。FrameworkSDK依赖于一个名为swift-GRPC的框架。我们使用Swift包管理器添加此依赖项。
目前,当我将FrameworkSDK的二进制版本添加到我的测试应用程序中时,它会抛出诸如“无法找到模块x”的错误。 错误所引用的模块是包含在swift-GRPC包中的模块。
我认为,在构建FrameworkSDK时,所有依赖项都包含在捆绑包中,这是正确的吗?如果是的话,我做错了什么?
1个回答

6
无法在框架中依赖于Swift Package。这在WWDC 2019 Talk 二进制框架中有所讨论。我已经链接到了依赖项/权限的讨论,在此链接的时间后不久,具体指出:

二进制框架不能依赖于包。

因此,如果您需要依赖包,您可能需要以不同的方式设置它,以便您依赖于它。它将需要作为兄弟依赖项提供给您,也可以通过不同的软件包管理器作为框架来使用,或者您将需要像拥有它一样构建代码。将其构建到您的模块中可能会很麻烦,对您而言更加费力,但如果它是用户不关心的实现细节,则最透明。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接