DocumentType不使用Swift映射到Xcode 6 Beta 5中

Rob*_*t R 11 macos swift xcode6

我正在使用Xcode 6 Beta 4中的Swift为OS X构建基于文档的应用程序,它运行良好.但是,升级到Xcode 6 Beta 5后,每次文档窗口尝试打开时,都会收到以下错误消息:

The DocumentType type doesn't map to any NSDocumentClass.
Run Code Online (Sandbox Code Playgroud)

我在"信息"屏幕中编辑了"文档类型"以尝试匹配该类.我试过${PRODUCT_MODULE_NAME}.Document,MyApp.Document简单地说Document,但每次都得到相同的错误信息.

最后,我尝试使用Swift创建一个全新的,基于模板的文档应用程序,但它也没有用.当我使用Objective C创建一个新的应用程序时,根本没有问题.很明显,Swift和Xcode 6 Beta 5存在问题.

任何人对我如何解决这个问题都有任何想法?或者这只是一个我必须等待的错误?

jim*_*b99 14

您使用的是错误类型的支架

${PRODUCT_MODULE_NAME}.Document
Run Code Online (Sandbox Code Playgroud)

它应该是:

$(PRODUCT_MODULE_NAME).Document
Run Code Online (Sandbox Code Playgroud)

不要混淆:

$(PRODUCT_NAME).Document
$(PRODUCT_BUNDLE_IDENTIFIER).Document
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

  • 碉堡了。这应该由 Xcode 完成。它应该完全告诉你该放什么。感谢分享这个。 (2认同)

小智 7

这似乎是一个错误,或无法修改的功能.正如Keenle在评论中所说,临时答案可以在第7篇文章中的devforums.apple.com/message/1017433#1017433找到:

对于NSDocumentClass,而不仅仅是"ClassName"输入"ModuleName.ClassName".ModuleName是模块的主要名称(您在Project Navigtor顶部和许多其他地方看到的内容).

因此,如果您的模块是"MyProject"并且您的文档是"MyDocument",请尝试输入"MyProject.MyDocument".