我一直在try 添加核心数据.

error: filename "EntityName +CoreDataClass.swift" used twice: '/Users/userName/Desktop/Development/MyApp/AppName/EntityName +CoreDataClass.swift' and '/Users/userName/Library/Developer/Xcode/DerivedData/AppName-dgwzrmxsetzvtedibxrazuutjwnh/Build/Intermediates/AppName.build/Debug-iphoneos/AppName.build/DerivedSources/CoreDataGenerated/Model/EntityName +CoreDataClass.swift'

我使用以下步骤添加核心数据:

因此,我在navigator中观察到4个新文件:

其内容:

import Foundation
import CoreData

___COREDATA_DATAMODEL_MANAGEDOBJECTCLASSES_IMPLEMENTATIONS___

EntityName+CoreDataClass.Swift :

import Foundation
import CoreData


class EntityName: NSManagedObject {

}

EntityName+CoreDataProperties.Swift :

import Foundation
import CoreData

extension EntityName {

    @nonobjc class func fetchRequest() -> NSFetchRequest< EntityName > {
        return NSFetchRequest< EntityName >(entityName: "EntityName");
    }

    @NSManaged var str: String?

}

我的try :

我所有的努力都是出于运气

推荐答案

当模型文件使用Xcode 8文件格式时,Xcode 8包括自动生成NSManagedObject类.如果你创建了自己的子类文件,你就是在创建重复的文件.错误消息中的第二个文件是DerivedSources中的Xcode自动创建的文件.

如果自动生成的文件满足您的需要,只需停止创建自己的文件,您就可以了.

如果你想创建自己的子类,你可以

  • 将模型文件的"工具版本"设置为Xcode 7.3或更早版本,以禁用所有代码生成(这似乎不会改变实际文件内容的任何有意义的内容),或者
  • 通过将实体的"Codegen"设置设置为"Manual/None",分别禁用每个实体的自动生成.

Swift相关问答推荐

OBJC代码中Swift 演员的伊瓦尔:原子还是非原子?

通常从数组调用的SWIFT静态协议函数

查找数组中 ** 元素 ** 的属性的最小值和最大值

从Swift中的泛型类继承?

为什么我不能在这个 Swift 间接枚举中返回 self ?

为什么这段Swift读写锁代码会导致死锁?

为什么在Swift中每次调用Decimal类型的formatted()方法都会越来越慢?

有什么方法可以快速为泛型参数分配默认值?

使用协议捕获 SwiftUI 视图

SwiftUI 中的计时器崩溃屏幕

Reality Composer Tap Trigger 问题

如何让 SwiftUI 中的文本在旋转框架的同时侧向显示?

在 Swift 中返回实例类型

Swift 4 Decodable - 以枚举为键的字典

无法分配给属性:self 是不可变的,我知道如何修复但需要理解

使 struct 可散列?

为什么我可以转换为 NSManagedObject 但不能转换为我的实体类型?

UICollectionView 自定义单元格在 Swift 中填充宽度

如何将应用程序与 iOS 联系人应用程序集成?

转换为 swift 3 后,视图控制器中出现奇怪的通用函数