题 避免“资源与文件系统不同步”


我使用Eclipse开发Java代码并定期收到以下消息:

资源与文件系统不同步。

右键单击>刷新将始终清除此项。

但是为什么Eclipse在找到这种情况时不能自动刷新?是否存在您希望资源不同步的情况?

如果有这样的条件并且它们不适用于我的工作,有没有办法让Eclipse在遇到这种状态时自动刷新? (我很欣赏它应该在正常开发中尽可能少地刷新,以提高人类开发人员的性能。)

更新(2012-06-25): 我的最新更新(版本:Indigo Release Build id:20110615-0604) 不再显示 首选项 - 常规 - 工作区 - 自动刷新 有一个选项“访问时刷新” - 我应该使用它吗?


256
2017-12-03 08:34


起源


为什么 你收到消息了吗?如果不小心,你可能会失去工作。 - Thorbjørn Ravn Andersen
我收到这条消息 总是 当我搜索工作区时,因为Servers项目(在web工具中)包含日志文件,这些文件在eclipse之外不断更新。到目前为止,除了自动刷新之外我还没有找到任何解决方案,但是这给了其他问题(特别是:当一些Ant构建运行时,Eclipse将刷新Ant构建的中间部分并将其搞砸)。 - Stijn de Witt
也许只是正确舔项目然后选择“刷新”? - Junchen Liu
愚蠢的问题:为什么资源的“额外副本”是强制性的?每个人都肯定需要这个伴随着“不同步”的机会。 - nsandersen


答案:


您可以在窗口 - 首选项 - 常规 - 工作区 - 自动刷新(调用 使用本机挂钩或轮询刷新 在较新的版本中)

Eclipse Preferences "Refresh using native hooks or polling" - Screenshot

我能想到为什么默认情况下没有启用的唯一原因是性能相关。

例如,自动刷新源文件夹可能会触发工作区的构建。也许有些人希望对此有更多的控制权。

还有一个 Eclipse网站上的文章 关于自动刷新。

基本上,没有外部触发器通知Eclipse在工作区外部更改的文件。相反,Eclipse使用后台线程来监视文件更改,这可能导致大型工作区的性能问题。


308
2017-12-03 08:41



+1这只发生在这种情况下吗?或者它会在其他地方影响我吗? - peter.murray.rust
我有首选项 - 常规 - 工作区 - 自动刷新。这是一样的吗? - peter.murray.rust
有没有办法让它自动接受来自文件系统的更改,对于没有未保存更改的打开编辑器窗口? - Leopd
@Leopd见 避免eclipse“在文件系统上更改”对话框? - Piotr Dobrogost
它现在似乎被称为“使用本机挂钩或轮询刷新”(Indigo SR1)。 - Oliver Bock


只需右键单击该文件或项目,然后单击“刷新”。错误将消失。我也面临同样的问题,它对我有用。


37
2017-09-17 04:09



OP提到在他的问题中,“'刷新'将永远清除这一点。”问题是,在处理复杂项目或与Eclipse外部正在更改文件系统的工具结合使用时,这非常烦人。 - ryanbrainard


enter image description here窗口 - >首选项 - >常规 - >工作区


19
2018-04-15 11:03



重写上面的答案是什么意思? - reverie_ss
投票给猎人。 - David Lakatos


对于新的Indigo版本,首选项更改为“访问时刷新”,并提供详细说明:通过工作区自动刷新外部工作区更改。

由于“资源与文件系统不同步”,当我使用外部工作区时会出现此问题,因此在选择此选项后,问题就解决了。


12
2017-09-07 09:21



这摆脱了这个消息。谢谢 - lsaffie


这种情况一直发生在我身上。

转到错误日志,找到异常,然后打开几个级别,直到您看到更像是根本原因的内容。它是否说“资源与文件系统不同步”?

当重命名包时,Eclipse当然必须在文件系统中移动文件。显然发生的事情是它后来发现它认为需要清理的东西已被重命名,找不到它,抛出异常。

你可能会尝试一些事情。首先,转到Window:Preferences,Workspace,然后启用“自动刷新”。从理论上讲,这应该可以解决问题,但对我而言,它并没有。

其次,如果您正在使用子包进行大型重构,请从下向上一次执行一个子包,并在重命名每个子包后显式刷新文件系统。

第三,只需忽略错误:当出现错误对话框时,单击Abort以保留部分更改,而不是将其回滚。再试一遍,你可能会发现你可以使用多次重试来完成整个操作。


5
2018-05-05 19:44



在此之后,我的一些进口商品已经腐败,但速度很快 组织进口 也固定了。 - z0r
只需将类移动到新包时,我就需要这样做(忽略错误并重试)。 - z0r


如果尝试删除文件夹(在* nix上)并且刷新无效,则打开终端并在您尝试删除的文件夹下面查找符号链接并手动删除。这解决了我的问题。


1
2017-08-20 22:34





当您从clearcase视图中打开Eclipse工作区并尝试重命名项目时,您将经常收到弹出警告...“资源'项目'与文件系统不同步”。如果刷新项目无法解决问题,请执行以下解决方法:a。打开工作区而不在视图中b。在Project Explorer c中选择项目。 ClearCase - > Associate Project(项目现在看起来应该像project [])d。右键单击项目 - >刷新(vob子文件夹现在应为空)e。右键单击项目 - >重命名... f。输入新名称

现在,您可以关闭工作区,在视图中重新打开它并刷新项目。如果您希望项目不与vob相关联,您也可以分离项目。


1
2018-04-28 21:18



Clearcase偷走了我的狗。 - Dominic Cerisano


一点点暗示。在重命名操作期间经常出现该消息。我的快速解决方法很紧迫 Ctrl-Y 消息确认后(重做快捷方式)。仅当重命名影响单个文件时,它才有效。


1
2018-04-09 11:26



是什么 Ctrl-Y 做? - z0r
Ctrl-Y是“重做”。在这种特殊情况下,你重命名一些东西然后eclipse遇到问题并撤消重命名操作。按Ctrl-Y可恢复重命名尝试。 - wathson
啊,我明白了。不在Ubuntu;它的 Ctrl-Shift-Z。考虑添加您按的原因的说明 Ctrl-Y 你的答案:) - z0r