首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将第三方框架链接到我自己的框架,使用迦太基发布

将第三方框架链接到我自己的框架,使用迦太基发布
EN

Stack Overflow用户
提问于 2019-06-12 21:10:04
回答 1查看 324关注 0票数 0

我们有几个不同的专有API提供给我们作为框架,提供类似的功能。API当然不是完全相同的,所以我们想围绕这些构建一个包装器外观框架,这样我们的应用程序就不需要关心它们使用的是哪种API。

首先,我创建了一个使用这些API之一的框架,并进行了单元测试,以验证它是否按预期工作。我们已经添加了第三方框架二进制文件作为项目的一部分,框架搜索路径如下:

代码语言:javascript
复制
$(inherited)
$(PROJECT_DIR)/Carthage/Build/iOS
$(PROJECT_DIR)

都是非递归的。之所以在这里使用Cartage路径,是因为我们使用Quick和Nimble进行单元测试。我将有问题的框架存储在项目根目录中。

我们希望使用迦太基来分发我们的框架,稍后还将其作为Cocoapod。

问题是,当我尝试通过命令carthage build --no-skip-current --platform iOS构建我们的框架时,我得到了错误:

代码语言:javascript
复制
*** Building scheme "Nimble-iOS" in Nimble.xcodeproj
*** Building scheme "Quick-iOS" in Quick.xcworkspace
*** Building scheme "XXX" in XXX.xcodeproj
Build Failed
    Task failed with exit code 65:
    /usr/bin/xcrun xcodebuild -project /Users/andre/Development/yyy/xxx/XXX.xcodeproj -scheme XXX -configuration Release -sdk iphonesimulator -destination platform=iOS\ Simulator,id=AE9E3D9D-BE2C-4AE1-AB37-C6BE8948067B -destination-timeout 3 ONLY_ACTIVE_ARCH=NO CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES build (launched in /Users/andre/Development/yyy/XXX)

日志中包含以下内容:

代码语言:javascript
复制
iphonesimulator/XXX.build/Objects-normal/i386/XXXLockService.o
/Users/andre/Development/yyy/XXX/XXX/LockServiceFactory.swift:7:71: error: 'PinServiceAccessImpl' is unavailable: cannot find Swift declaration for this class
                     case .xxx: return XXXLockService(lockService: PinServiceAccessImpl.getInstance())
                                                                   ^~~~~~~~~~~~~~~~~~~~

PinServiceAccess.PinServiceAccessImpl:2:12: note: 'PinServiceAccessImpl' has been explicitly marked unavailable here
open class PinServiceAccessImpl : NSObject {

当使用应用程序中的框架时,文档指出我们应该将框架作为嵌入式二进制文件添加,但当项目是框架时,此选项不可用。

令我困惑的是,单元测试似乎找到了PinServiceAccessImpl.getInstance()!

我猜有一些我不知道的关于链接的细节会导致构建失败。有没有人知道我们错过了什么?

EN

回答 1

Stack Overflow用户

发布于 2019-06-14 18:52:16

将部署目标更新到11.0时解决了此问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56563053

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档