`intentdefinition` 中定义的 Intent 的自动生成代码会抛出`No newline at end of file`

Posted

技术标签:

【中文标题】`intentdefinition` 中定义的 Intent 的自动生成代码会抛出`No newline at end of file`【英文标题】:the auto generated code for an Intent defined in a `intentdefinition` throws `No newline at end of file` 【发布时间】:2018-06-27 03:43:04 【问题描述】:

我已将Intents.intentdefinition 添加到我的项目中。在其中,我添加了一个名为 OrderItem 的新意图,其中包含一些参数和参数组合。

当我尝试导入自动生成的OrderItemIntent.h 时,编译器会抛出No newline at end of file 编译错误。

不确定解决此问题的正确方法是什么。

【问题讨论】:

自动生成的文件出现在哪里?我创建了一个新的意图定义,但在任何地方都看不到任何自动生成的类。 @MikeWelsh 这些文件对 xcode 是隐藏的,您可以在声明该类型的变量并在其上“跳转到定义”时访问它们。 我要导入什么?总体意图导入是否涵盖了 ObjC? 【参考方案1】:

请让我解释一下。

OrderItemIntent(XXXIntent)文件的查找方式

    移至 Intents(XXX).intentdefinition 文件。 从任何自定义意图中选择一个意图。 从 Xcode 右侧移至 Inspector 面板并转到第三个 Identity Inspector 部分 您可以找到“自定义类”空白,并且有一个右箭头按钮连接到类文件。 点击那个按钮

谢谢

【讨论】:

如何从代码中引用文件以便解析解析?我已经尝试了我能想到的大多数组合,但是文件本身位于某个疯狂的深层目录中,我认为通过完整路径引用它是不正确的。因此,大概有一些正确的方法可以将这些从 Objective-C 自动生成的文件作为标头引用。 @cyphers,选择Intents.intentdefinition 文件并在右侧窗格中打开文件检查器。在 Target Membership 框中选中您的 Intent 目标框。【参考方案2】:

似乎 Xcode 在为 Objective-C 生成的 Intent 类中存在错误。但是,您可以转到您的项目设置,搜索 Intent Class Generation Language 并选择 Swift。到目前为止,这应该可以解决问题。

【讨论】:

仍然无法导入,现在在 Xcode 10.2 中可以使用吗?他们是否为 Objective-C 项目添加了修复程序。

以上是关于`intentdefinition` 中定义的 Intent 的自动生成代码会抛出`No newline at end of file`的主要内容,如果未能解决你的问题,请参考以下文章

如何在目标 c-swift 桥接项目中使用 intentdefinition 文件?

java中如何初始定义一个数组是float型的

js中一个自定义数组的问题

android开发中,定义数组,能不能不指定大小? 我输入int i[]; i[0]=1;编译不出错,运行出错。

c语言值序外16

Java中数组定义的三种方式