首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用Swift 4.1.2编译的模块无法在SWIFT4.1.50中导入: Xcode 10错误

使用Swift 4.1.2编译的模块无法在SWIFT4.1.50中导入: Xcode 10错误
EN

Stack Overflow用户
提问于 2018-06-05 21:43:05
回答 5查看 15.3K关注 0票数 17

SWIFT4.2出现了,在我的项目中,当使用ObjectMapper和其他一些豆荚时,我也会收到这个错误消息:

使用Swift 4.1.2编译的模块无法在Swift 4.1.50中导入

那么,我如何告诉Xcode开始更新我的项目并将其迁移到SWIFT4.2?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2018-06-10 18:21:11

Swift 4.2中,隐式解封可选(IUO)的实现发生了变化,这与swift博客现在隐式解除包装可选T!会被认为是T?和额外的标志,使编译器知道它是一个隐式解包可选。

宫内节育器的新精神模型就是你所考虑的!作为?的同义词?加上它在声明中添加了一个标志,让编译器知道声明的值可以隐式地展开。

由于这一更改,可能会出现一些源代码兼容性问题,可能需要您修改代码才能成功编译。

在Swift 3中,像var a: Int这样的声明?将导致有类型可选,以及像var b: String这样的声明!会导致b有ImplicitlyUnwrappedOptional型。它在SWIFT4.2中发生了变化,因此它对Xcode 10的ObjectMapper显示错误--它附带了快速4.2,对于Xcode 10也做了类似的实现。

在Objectmapper库中,有一些函数声明,这些声明在前面显示了WASTIVE4.1的警告,现在显示为for 4.2的错误。有关Xcode 9.4和Swid4.1中的警告,请参阅下面的图像

有一些关于ObjectMapper GitHub回购的请求,它已经解决了这个问题,但是他们正在等待新的Xcode beta版本,因为它使用的是最近被接受的编者指令特性,它将与新的Xcode beta一起发布。

更新:解决了ObjectMapper 3.3.0版本.中的问题

票数 8
EN

Stack Overflow用户

发布于 2018-07-18 18:35:50

您没有用适当的快速版本编译您的迦太基模块。所以你需要:

  1. 确保您的终端指向您的Xcode 10 Beta应用程序,而不是您的常规Xcode:

sudo xcode-选择-switch Xcode_beta_10.app

  1. 更新您的迦太基文件:

迦太基更新--平台iOS --不使用-二进制文件

  1. 回到Xcode中的项目,清理,构建
票数 26
EN

Stack Overflow用户

发布于 2018-09-24 05:18:42

使用终端在项目目录中运行下面的命令。它会更新你的吊舱。希望它能解决你的问题。

代码语言:javascript
运行
复制
pod update ObjectMapper
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50709377

复制
相关文章

相似问题

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