小编Joh*_* S.的帖子

XCode在某些文件中找不到Swift桥接头文件

我在使用XCode的iOs应用程序中遇到了问题.它已经在Objective-C中编码,现在我正在努力在Swift中一个接一个地迁移文件.代码在具有版本控制系统(git)的团队成员之间共享.

我从核心类开始,我这样做:

  • 我在Swift文件中编写新类,例如.MyClass.swift(带@objc前缀关键字)
  • 我代替#import "MyClass.h"通过@class MyClass;在头文件
  • 我添加#import "MyProject-Swift.h"了需要它的实现文件(.m)
  • 我删除了MyClass.h和MyClass.m文件
  • 我清理并构建项目

这个过程已经工作了好几次,但由于某些原因,有些#import "MyProject-Swift.h"不起作用,我收到错误:找不到'MyProject-Swift.h'文件.

根据导致问题的不同文件,有时,Ctrl + Click会打开"MyProject-Swift.h"文件,有时不会(无论"未找到错误").

但文件存在,并且翻译的Swift代码存在于其中.

另一件事真的很奇怪,我试图重新创建新的.h和.m文件,从那些使用#import "MyProject-Swift.h"东西和有问题,然后它工作(有时不,我得到其他错误)!

由于它在某些情况下有效,我真的不明白为什么它会导致其他情况出现问题.当然,我在几十个主题中搜索,但没有找到任何有同样问题的人.

可能是XCode设置问题,还是因为团队开发人员之间的XCode版本不同?

任何的想法 ?

谢谢

编辑:

我以另一种观点完成了问题描述.

我确实让项目处于工作状态:使用我的一些新的Swift文件,它构建并运行良好(一些Objective-C文件使用Swift文件).

我知道某个.m文件有问题:

  • #import "MyProject-Swift.h"在开头添加,没有别的
  • XCode说找不到'MyProject-Swift.h'文件,Ctrl + Click不起作用,项目将无法生成
  • 但是,如果我点击带有四个小方块的按钮(编辑器的左上角),在显示的菜单中我有"包含",其下面列出了"MyProject-Swift.h",并点击"MyProject-Swift" .h"打开文件!

更换#import "MyProject-Swift.h"#import <MyProject-Swift.h>不会改变任何东西.

我有时也会遇到这种情况:Ctrl + Click打开"MyProject-Swift.h",但是XCode 没有找到"MyProject-Swift.h"文件(它也不会构建).

git xcode objective-c ios swift

10
推荐指数
3
解决办法
8659
查看次数

标签 统计

git ×1

ios ×1

objective-c ×1

swift ×1

xcode ×1