SwiftUI 2.0 CoreData issues with new project - 'Cannot find type 'Item' in scope'

北战南征 提交于 2020-11-28 04:56:23

问题


[EDIT] I was hoping that Apple would have fixed what is obviously a bug. The solution is to clear the cache, close and reopen Xcode..

I am on Xcode Beta and starting a new project and without writing a single line of code I already get an error. I could not find anything online. Perhaps is this too new?

In the new version of Xcode I selected new Project,

then ticked the box with Core Data

If I do not tick the box I would get the usual Xcode SwiftUI template with "hello world", but ticking the Core Data box I get a ton more template code from Apple and without touching anything and without changing a single line of code, I get an error message compiling it..

The error is: "Cannot find Item in scope"

Quite frustrating, especially because all tutorials I have start with the classic 'AppDelegate' file configuration.. while the new SwiftUI is 'universal'!

I checked the file .xcdatamodeld and it looks fine, and has the 'Item' entity. Why it doesn't compile?

So I am now at a loss, is there a solution or this is a bug and need to wait that Apple releases a fix. If so I do not need to start with a new project until then!

PS Today I cleaned the cache with CMD-ALT-SHIFT-K, closed Xcode, deleted the app from the simulator, reopened, rebuilt and it did compile.. but nothing in the simulator! We are making progress! Still I did not change a line of code. Everything is the Apple template yet!


回答1:


The normal Xcode clearing works for me:

  1. Clean build folder (shift + command + k)
  2. Close Xcode completely
  3. Delete 'DerivedData' content (/Library/Developer/Xcode/DerivedData)
  4. Try again (run Xcode & build)



回答2:


For a brand new project, press Command+B to build and it will be fine.




回答3:


I didn't find any of the others answers worked for me, but what did was:

  • Opening (ProjectName).xcdatamodel
  • Adding an attribute to the Item entity, shouldn't relly matter what, I just add "foo" of type "String"
  • Cmd-B to build (You are then free to delete the new attribute).


来源:https://stackoverflow.com/questions/63603754/swiftui-2-0-coredata-issues-with-new-project-cannot-find-type-item-in-scope

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!