在为不同目标构建项目时,我收到此错误:
无法确定Core Data代码的生成文件路径 代: 错误域= NSCocoaErrorDomain代码= 260“没有模型的当前版本 在路上 /Users/abc/Documents/Code/xyz-ios/ABC/iPhoneXMPP/SRT/Model.xcdatamodeld:” 的UserInfo = {NSFilePath = /用户/ ABC /文档/代码/ XYZ-IOS / ABC / iPhoneXMPP / SRT / Model.xcdatamodeld, NSLocalizedDescription =路径中模型的当前版本 /Users/abc/Documents/Code/xyz-ios/ABC/iPhoneXMPP/SRT/Model.xcdatamodeld:}
错误提到的路径是“
/Users/abc/Documents/Code/xyz-ios/ABC/iPhoneXMPP/SRT/Model.xcdatamodeld
“但”SRT“文件夹位于我的文件夹结构中的”Temp“文件夹中。 我该如何解决这个问题?
答案 0 :(得分:42)
与shallowThought的答案类似,我发现我必须首先取消选中目标,然后重新检查它,然后重新构建。
答案 1 :(得分:17)
在Xcode中,选择您的Model.xcdatamodeld
模型,并在检查器中勾选新目标的“目标成员资格”复选框。
答案 2 :(得分:8)
在我的文件选择器代码生成中被选为Swift。 我选择代码生成语言作为Objective-C。 错误消失了。
选择Objective-C后
产品>清洁强>
然后重建项目。
这对我有用。
答案 3 :(得分:3)
手动添加核心数据后,Just Clean和Build为我工作(不是从项目开始)。
答案 4 :(得分:2)
在我的情况下,这是Model.xcdatamodeld与远程(源或头)合并时发生冲突的结果。 GIT并没有以某种方式检测到此冲突,并以“无冲突”的方式滑过。
解决方案:打开Model.xcdatamodels格式为xml(使用textEditor)并搜索冲突(>>>)。解决冲突并保存。
答案 5 :(得分:2)
就我而言,我已重命名了.xcdatamodel所在的目录,这导致旧文件名条目没有从我的Target的Compile Sources
阶段中删除。
我要做的就是从Compile Sources
阶段中删除旧文件,方法是搜索xcdatamodeld
,然后删除目标的Build Phases
中的相关条目(现在不相关...)。标签:
完成后,请确保将您当前的实际.xcdatamodeld文件添加到目标中。您可以这样做:
a)通过在Xcode的 Project Navigator (左列->第一个图标)中单击文件:
b),然后在Xcode的 File Inspector (右列->第一个图标)中选中您希望此文件成为其一部分的所有目标的框。 ,位于Target Membership
下:
答案 6 :(得分:1)
上面给出的答案是正确的,但如果这些不起作用,那么:
这解决了我的问题。希望这会有所帮助。
答案 7 :(得分:1)
如果您使用的是NSPersistentContainer,则可以从iOS 10+开始使用。 您需要更改目标>一般>部署信息>部署目标为10.0 +。
然后,产品>清洁&建立。有效。
答案 8 :(得分:1)
答案 9 :(得分:0)
就我而言,我试图构建一个外部驱动器。 将项目复制到内部驱动器,它将起作用。
答案 10 :(得分:0)
就我而言,我是在pod项目.xcworkspace中保存了.xdatamodelid
的新版本,而不是原始的xcproject。将其保存在原始版本中可以解决我的问题。