您当前的位置: 首页 >  xcode

Xcode8.x使用CoreData模型出现类被非法重定义的解决办法

发布时间:2016-11-10 16:32:03 ,浏览量:0

这个问题在Xcode7.x中貌似没碰到过。不过在Xcode8.x中,在使用可视界面创建CoreData模型后再使用Editor->Create NSManagedObject Subclass之后有时会发现生成的数据对象类被重复定义的编译错误!

这是因为在Xcode8.0中包含了一个自动生成NSManagedObject的机制,如果你打开该机制则会在project(Derived Data目录中)实际生成的DerivedSources文件夹中出现同名的源代码文件。

有几种解决办法:

首先在你自己手动创建数据类之前,如果觉得满意你可以直接使用Xcode为你自动创建的数据类,省得麻烦!

但本猫是控制狂,所以对于自动创建又看不到摸不着的东东还是抱有略微不爽的赶脚在里面。如果你跟我一样喜欢自己动手,那么你可以选择关闭Xcode的自动生成机制,有两种方式:

1.打开在model file的inspector,选择Tools Version为 Xcode 7.3

这里写图片描述

2.或者你可以根据不同的entity去分别选择启用还是关闭自动生成机制;选择model file中特定的entity,打开其Data Model Inspector窗口,将其中的Codegen选项设置为Manual/None: 这里写图片描述

PS:对于Xcode中对model file所做的修改有时往往不能被正确保存,我们需要做以下步骤来确保:

  1. 点击Xcode->File->save菜单
  2. 清空项目文件夹
  3. 重启Xcode查看修改是否真正被应用
关注
打赏
1688896170
查看更多评论

暂无认证

  • 0浏览

    0关注

    107766博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0822s