代码完成对我来说一直是个问题,最近又出现了新的问题。通常我可以删除派生数据文件夹并重建,有时必须退出Xcode,但现在我遇到了一个我无法解决的问题。
自动完成正在我的基础项目中工作,我的意思是如果我在使用该程序构建的文件中,代码完成工作。但是,如果我开始在使用测试目标构建的代码模块中编写测试用例,则完成将不适用于任何主要目标类或变量。
我有@testable import [target],它过去一直在工作。
我最近唯一做的就是将我的repo从我的iCloud驱动器上移开,因为只要拉到本地硬盘驱动器位置就会导致Xcode崩溃。
项目设置中是否有一些位置可以确定Xcode的位置?我需要删除一些隐藏的缓存吗?没有代码完成的编程是一场噩梦。
在Swift 3中使用最新的8.2.1 Xcode和我的所有代码。
答案 0 :(得分:12)
我最近遇到了同样的问题,我一直在尝试的是:
清理我的构建文件夹 Alt + Shift + Cmd + K
< / LI>构建我的测试目标 Shift + Cmd + U
我错误地认为Xcode 8.2.1会构建我的主要目标,因为它在我的单元测试类中是@testable import
。
所以最终有效的步骤是:
清理我的构建文件夹 Alt + Shift + Cmd + K
< / LI>构建我的主要目标 Cmd + B
构建我的测试目标 Shift + Cmd + U
之后,代码完成和语法突出显示都会按预期返回。
答案 1 :(得分:8)
我在Xcode 10.1下遇到了相同的问题。该问题似乎与当前使用的方案的Build配置设置有关。也就是说,我的行动不同,例如为“运行”操作释放,为“测试”操作释放调试。将“运行”操作的构建配置更改为“调试”(因此与“测试”操作匹配)可以解决我的问题。
我使用的步骤:
选择您的方案(左上方)
选择“编辑方案”
确保“测试”和“运行”操作使用相同的构建配置
3.1如果没有,请选择相应的操作(“测试”或“运行”),选择“信息”标签,然后从相应的选择器中更改配置