#import "Project-Swift.h" 文件不刷新

Posted

技术标签:

【中文标题】#import "Project-Swift.h" 文件不刷新【英文标题】:#import "Project-Swift.h" File does not refresh 【发布时间】:2014-10-04 07:17:34 【问题描述】:

我有一个使用 Swift 和 Objective-C 代码的项目。在我当前的项目中,如果我添加新的 Swift 模块,#import "Project-Swift.h" 文件不会刷新。

#import "Project-Swift.h" // does not refresh if I add .swift files

所以在 Objective-C 世界中,swift 代码是不可用的。文件存在,但只包含默认的#defines 等。没有项目相关的东西。

清除缓存、重建、删除派生数据无济于事。

【问题讨论】:

尝试重启xcode 解决了。 @objc(...) 现在是强制性的。 【参考方案1】:

解决了。忘记@objc(<class>)。这是强制性的。

详细信息(迁移)

Migrating Objective-C Code to Swift

这里(Swift 类型兼容性)

Interacting with Objective-C APIs

【讨论】:

【参考方案2】:

在我的情况下,它通过为我的项目中的另一个目标构建而起作用:

检查你是否在你的班级前面加上了@objc 选择其他方案(目标) 构建 ||运行 桥接文件更新 将方案改回我正在处理的目标

【讨论】:

【参考方案3】:

只需在要在 Object-C 代码中使用的 Swift 类之前使用 @objc,然后构建项目。 例如:

 @objc class Person : NSObject
 
  // Swfit code goes here.
 

现在#import "Project-Swift.h" 将在您的项目中可用。

【讨论】:

以上是关于#import "Project-Swift.h" 文件不刷新的主要内容,如果未能解决你的问题,请参考以下文章

Python-import

#import "Project-Swift.h" 文件不刷新

CSS里 @import用法

在 Jquery .css(height: "300px !important") 中不起作用 [重复]

JS 文件里面再用 $import 引用JS后如何调用

范围为“import”和没有“import”的“pom”类型依赖有啥区别?