从XCode 9.2开始,这还没有得到解决。为我重新启动修复程序。
更新由于某种原因,它不再发生在我身上。我也注意到,在尝试开始执行重构或多次点击重构之前,我没有让索引完成,仍然会看到错误,但不再是永久性的。
我向WWDC 2018的一位工程师询问了这个问题。我的工作区中只有一个项目中出现了这个问题。同一工作区中的其他项目工作正常。目前,这个问题没有解决方案。如果您想帮助Apple解决此问题,您可以关闭Xcode并在终端中运行以下命令:
SOURCEKIT_SERVICE_LOG=3 /Applications/Xcode.app/Contents/MacOS/Xcode 2>&1 | tee /tmp/sk-log.txt
然后尝试重现问题并向他们发送日志文件(/tmp/sk-log.txt
),以便他们可以缩小范围并希望在未来的Xcode版本中修复它。
注意这是与项目相关的问题,不会修复OS更新,Xcode更新或任何数量的重启应用程序,至少是我所拥有的应用程序。
我很久以前就使用Xcode8创建了Xcode的项目。出于某种原因,我必须升级到Xcode9(准确地说是9.4.1)。然后我只在那个旧项目上遇到了这个错误,而不是使用Xcode9创建的新错误。
所以我认为这个错误与项目问题有关。所以我决定比较旧的和新的设置。有一些差异,经过几次尝试,通过改变Optimization Level for Debug
解决了重构问题。
Target
,Build Settings
Optimization Level (Debug) = No optimization [-Onone]
DerivedData
中删除与您的项目相关的/Users/YourMacUsername/Library/Developer/Xcode/DerivedData
文件夹我更新到Xcode 10并最终重构现在它在一年之后再次运行而没有重构
我遇到了完全相同的问题。原来,我的构建配置设置为Release
模式。将其更改为Debug
,清理构建文件夹并重新编译为我修复了问题。
我在Xcode 10.3中遇到了同样的问题。当我右键单击→重构→重命名类定义中的类名时,重构不起作用。但是当我在使用该类的代码中执行相同操作时,它确实有效。