J'utilise XCode9
et j'essaie de faire refactoriser de mon fichier Swift
mais chaque fois que j'obtiens une erreur ci-dessous:
Les plages du moteur de refactoring ne correspondaient pas aux plages initiales
Je ne sais pas ce que c'est. Quelqu'un a-t-il des solutions à ce problème?
Merci d'avance!
Cela n'a pas été résolu à partir de XCode 9.2. Redémarrage des correctifs pour moi.
Mise à jour Pour une raison quelconque, cela ne se produit plus pour moi. J'ai aussi remarqué que chaque fois que je ne laissais pas l'indexation se terminer avant d'essayer de commencer à faire un refactor ou de taper sur le refactor plusieurs fois, je vois toujours l'erreur, mais ce n'est plus permanent.
J'ai posé la question à un ingénieur de la WWDC 2018. Ce problème se posait pour moi dans un seul projet de mon espace de travail. D'autres projets dans le même espace de travail fonctionnent bien. Pour le moment, il n'y a pas de solution à ce problème. Si vous voulez aider Apple à résoudre ce problème, vous pouvez fermer votre Xcode et exécuter la commande suivante dans le terminal:
SOURCEKIT_SERVICE_LOG=3 /Applications/Xcode.app/Contents/MacOS/Xcode 2>&1 | tee /tmp/sk-log.txt
Essayez ensuite de reproduire le problème et envoyez-leur le fichier journal (/tmp/sk-log.txt
) afin qu'ils puissent le réduire et, espérons-le, le corriger dans les futures versions de Xcode.
Avis Il s'agit d'un problème lié au projet. Il ne sera pas résolu avec les mises à jour de système d'exploitation, les mises à jour Xcode ou un nombre quelconque d'applications qui redémarrent, du moins celle que j'ai.
Le projet de Xcode a été créé avec Xcode8 il y a longtemps. Pour une raison quelconque, je dois passer à Xcode9 (9.4.1 exactement). Ensuite, j'ai rencontré cette erreur uniquement sur l'ancien projet, pas sur le nouveau créé avec Xcode9.
Donc, je pense que cette erreur est liée à un problème de projet. J'ai donc décidé de comparer les paramètres entre l'ancien et le nouveau. Il y a quelques différences, et après plusieurs tentatives, en modifiant le problème de refactor résolu de Optimization Level for Debug
.
Target
, Build Settings
Optimization Level (Debug) = No optimization [-Onone]
DerivedData
associé à votre projet dans /Users/YourMacUsername/Library/Developer/Xcode/DerivedData
Je mets à jour Xcode 10 et enfin, le refactoring fonctionne à nouveau après un an sans refactoring
Je connaissais exactement le même problème. Il s'est avéré que ma configuration de génération était définie sur le mode Release
. Le changer en Debug
, le nettoyage du dossier de compilation et la recompilation ont résolu le problème pour moi.