本周,我将Eclipse SVN插件从Subclipse切换到Subversive。 Subversive似乎比Subclipse慢一点,但我喜欢Subversive中的历史记录,提交对话框和标签修饰要好得多。

不幸的是,看起来我将不得不切换回Subclipse,因为Subversive似乎破坏了Eclipse。现在,有时我的项目有时会“不同步”,最经常是在创建新类或执行Refactor-> Rename命令时。 “不同步”是指:


语法着色和样式错误。在下图中,“公开”并不完全是红色,属性也不是完全蓝色,斜体字放在错误的位置,等等。
选择元素/属性无法正常工作,因为Eclipse认为您单击了其他内容。在下面的图片中,我单击了第二个功能,但是突出显示了一些非常奇怪的东西。
不好:自动构建和语法检查不起作用。
非常糟糕:添加/更改/删除代码的所有IDE功能均被破坏:


尝试重构名称将引发异常或更改其他元素的名称。
添加自动导入将在类主体的中间添加import语句,从而消除所有不幸的代码块。
如果“保存时组织进口”首选项被激活,上帝会帮助您...



一张图片胜过千言万语 -

有趣的是,可以通过在混乱文件中添加更改并保存来临时解决此问题。但是,执行此操作时,必须保存两次-第一次保存后,文件“已更正”,但仍标记为脏文件。但是,此修复是短期的,因为您对该文件进行的下一次更改可能会再次使其不同步。

我不知道这是怎么回事。进行了一些谷歌搜索,将我带到了此链接:Eclipse: "Refactor - Rename" completely messed up, replacing arbitrary characters in file。链接问题中的用户有一个类似的问题,这显然也是由颠覆性引起的。不幸的是,他的解决方案不适用于我的工作空间。

我还询问了工作地点,一些同事报告说他们的机器上遇到了此问题。它们全部使用Subversive,而不是Subclipse。

我不知道StackOverflow是否是正确的选择,还是我应该将其作为错误直接提交给Eclipse / Subversive。但是,也许有人在那里看到了这种或类似现象,并且知道解决方法或解决方法?任何提示将非常感谢!

最佳答案

经过更多测试,我们能够确定以下各项:


任何涉及移动/重新命名/删除文件的命令都将导致此问题。
在只有几个项目(禁用SVN缓存可解决此问题,但会导致无法接受的性能问题。
卸载Subversive并安装Subclipse(到同一工作空间中,而无需重新安装Eclipse)可以解决此问题。


显然Subversive要么优化不佳,要么存在导致其在大型工作区中崩溃的错误。我已经将此问题报告给Subversive团队,但在此问题得到解决之前,我们的新官方立场是建议所有开发人员使用Subclipse而不是Subversive。

我会很乐意将GUI换成稍微差一点的GUI,以换取实际可用的SVN插件。

08-07 05:57