Eclipse自动刷新(在自定义构建器之后)不会发现新文件

时间:2013-05-23 01:58:47

标签: eclipse

这不是很多“我如何让Eclipse自动刷新”的问题。我的问题是它 但不完全。

在具有多个项目的工作空间中,编译一个导致源代码在其他项目中生成(纯粹为此目的而存在 - 没有手动编写的源代码)。源代码是在主编译本身期间生成的(即不是自定义构建器,而是Scala编译器的插件,但这应该是无关紧要的)。

到目前为止我所做的是:

  1. 在标准之后添加一个虚拟自定义(ant)构建器,并将其设置为“刷新所选资源” - 这些生成项目的源文件夹。

  2. 此外在生成项目的标准(Java)构建器之前添加虚拟自定义(ant)构建器,以刷新相同的内容。实际上我尝试了各种版本 - 只是源文件夹,整个项目或整个工作区具有相同的结果。请注意,这些生成的项目设置为依赖于其编译生成其源代码的项目。

  3. 在窗口中 - >偏好 - >一般 - >除“访问时刷新”外,工作区还启用了“使用本机挂钩或轮询刷新”。我也试过禁用“刷新访问”(只留下另一个)。同样的结果。

  4. 尝试使用Eclipse Indigo(3.7 SR2 20120216-1857)和Juno(4.2.2 M20130204-1200),这两个版本都是64位版本。安装了其他插件,最着名的是Scala IDE(Scala 2.9和2.10的多个不同版本以Scala IDE 3.0.0结尾)。同样的结果。

  5. ......结果是 Eclipse确实注意到已修改的文件。无论上面设置的最佳组合(忘记),我甚至能够注意到一些曾经生成的文件不再存在并让它们消失(尽管我仍然需要折叠树并重新扩展它,但不需要F5)。

    但是,我从来没有让它自动发现以前不存在的全新文件。在我的情况下,也会产生编译错误(因为它发现的修改过的文件已经更改,请参考新文件中的代码,它没有注意到)。

    简单的F5解决了这个问题,但它正在扼杀我,因为我试图将这个环境推向其他开发者,我讨厌不得不告诉他们“你知道,你必须(继续)推送(ing)F5你每次......“。

    在Eclipse中这仍然是不可能的吗?有没有人知道一个可以提供帮助的插件(如果不是直接解决方案)?

    正如我在评论中所指出的,发现新文件夹(Java包)似乎也不是问题。只是现有文件夹中的新文件。

    谢谢!

    更新

    我所做的所有刷新事情我发现了之前我没有做过的事情。

    1. 我在导致代码生成的项目中进行了更改(试图测试是否重新出现以前消失的文件是一个问题或其他)。这次我只是重命名一个方法,该方法也导致生成的源文件(Java类)的名称也被更改。
    2. 启用“自动构建”时,Eclipse开始构建。很快它发现了一个错误并抱怨它 - 一个被修改的生成类现在引用了Eclipse尚未看到的类(因为刷新不完整 - 看到修改过的文件,但仍然认为不再存在的文件存在并且没有看到新文件。)
    3. 构建实际上继续。进展上下,出现和消失了很多次,建立其他依赖项目。始终在修改后的类的包资源管理器中列出并标记错误。
    4. 在构建看似完成之后(在其中出现该错误,几分钟后),刷新完成(!!!)。包资源管理器更新,旧文件消失,新文件出现,错误消失等等。我最初将此归因于我切换窗口并触发刷新的方式,但我确保我最后一次没有触及 - 只是做了改变并按下Ctrl + S保存它。
    5. 这可能意味着'条件'并非如此糟糕(一个人必须非常耐心并且有钢铁神经)。进一步调查。感谢所有正在或正在做同样事情的人!问题仍然是为什么有两次刷新而第一次不完整?

0 个答案:

没有答案