在重构类名时,Eclipse最近显示了一种非常奇怪的行为。例如,让我们看看我们的一个类:
public class CampaignCSVPanel extends ContentPanel {
private FileUploadField uploadFieldCsv = new FileUploadField();
...
}
我将其重命名为“CampaignCsvPanel”,然后发生以下情况:
public class CampaignCSVPanel extends ContentPanel{
private FileUploadField uploadFielCampaignCsvPanelploadField();
...
}
奇怪 - 基本上每次我都会执行类重命名。还有更多:
我认为,必须与工作区中的项目有关,因为它只发生在我工作的一家公司的项目中 - 而不是我正在工作的其他项目项目上。你有什么想法,原因是什么?
(系统规格:
答案 0 :(得分:2)
试试这个:
转到Windows - >偏好 - > Java并取消选中“在没有对话的情况下在编辑器中重命名”
(我正在查看最近发布的Eclipse Indigo,我只假设以前版本的设置相同)
现在,您可以预览它打算进行的所有更改。
如果你可以这样做,并在该对话框中验证它正在进行一些疯狂的替换,那么你应该绝对提交Eclipse的错误并提供可重现的示例。我敢打赌,一旦你查看它打算替换的事物清单,你会找到解决问题的其他解释。
答案 1 :(得分:1)
这太烦人了。显然,重构引擎知道它必须替换一些东西但是替换错误位置的字符...... - 没有答案,只有一些额外的想法/测试
答案 2 :(得分:1)
我发现了问题:项目正在使用像$Date: $
这样的svn标签当我删除它们时,问题就消失了。当我手动重新插入它们(以确保我不插入无效字符)时,问题会重新出现。
当我将SVN连接器从JavaHL切换到SVNKit时,我进行了一些实验,问题也消失了。